├── ForgotPassword ├── ForgotPassword.phtml └── index.php ├── PHPMailer ├── Exception.php ├── OAuth.php ├── PHPMailer.php ├── POP3.php └── SMTP.php ├── ResetPassword ├── ResetPassword.phtml └── index.php ├── add_todo ├── add_todo.phtml └── index.php ├── assets ├── bootstrap-5.1.3-dist │ ├── css │ │ ├── bootstrap-grid.css │ │ ├── bootstrap-grid.css.map │ │ ├── bootstrap-grid.min.css │ │ ├── bootstrap-grid.min.css.map │ │ ├── bootstrap-grid.rtl.css │ │ ├── bootstrap-grid.rtl.css.map │ │ ├── bootstrap-grid.rtl.min.css │ │ ├── bootstrap-grid.rtl.min.css.map │ │ ├── bootstrap-reboot.css │ │ ├── bootstrap-reboot.css.map │ │ ├── bootstrap-reboot.min.css │ │ ├── bootstrap-reboot.min.css.map │ │ ├── bootstrap-reboot.rtl.css │ │ ├── bootstrap-reboot.rtl.css.map │ │ ├── bootstrap-reboot.rtl.min.css │ │ ├── bootstrap-reboot.rtl.min.css.map │ │ ├── bootstrap-utilities.css │ │ ├── bootstrap-utilities.css.map │ │ ├── bootstrap-utilities.min.css │ │ ├── bootstrap-utilities.min.css.map │ │ ├── bootstrap-utilities.rtl.css │ │ ├── bootstrap-utilities.rtl.css.map │ │ ├── bootstrap-utilities.rtl.min.css │ │ ├── bootstrap-utilities.rtl.min.css.map │ │ ├── bootstrap.css │ │ ├── bootstrap.css.map │ │ ├── bootstrap.min.css │ │ ├── bootstrap.min.css.map │ │ ├── bootstrap.rtl.css │ │ ├── bootstrap.rtl.css.map │ │ ├── bootstrap.rtl.min.css │ │ └── bootstrap.rtl.min.css.map │ └── js │ │ ├── bootstrap.bundle.js │ │ ├── bootstrap.bundle.js.map │ │ ├── bootstrap.bundle.min.js │ │ ├── bootstrap.bundle.min.js.map │ │ ├── bootstrap.esm.js │ │ ├── bootstrap.esm.js.map │ │ ├── bootstrap.esm.min.js │ │ ├── bootstrap.esm.min.js.map │ │ ├── bootstrap.js │ │ ├── bootstrap.js.map │ │ ├── bootstrap.min.js │ │ └── bootstrap.min.js.map ├── css │ ├── bootstrap.min.css │ └── style.css ├── image │ ├── account.png │ ├── edit.png │ ├── hero-bg.png │ ├── hero-img.png │ ├── testi-1.jpg │ └── todo.png ├── script │ ├── bootstrap.bundle.js │ ├── bootstrap.bundle.min.js │ ├── index.min.js │ └── main.js └── vendor │ ├── aos │ ├── aos.css │ └── aos.js │ ├── bootstrap-icons │ ├── bootstrap-icons.css │ ├── bootstrap-icons.json │ ├── fonts │ │ ├── bootstrap-icons.woff │ │ └── bootstrap-icons.woff2 │ └── index.html │ ├── bootstrap │ ├── css │ │ ├── bootstrap-grid.css │ │ ├── bootstrap-grid.css.map │ │ ├── bootstrap-grid.min.css │ │ ├── bootstrap-grid.min.css.map │ │ ├── bootstrap-grid.rtl.css │ │ ├── bootstrap-grid.rtl.css.map │ │ ├── bootstrap-grid.rtl.min.css │ │ ├── bootstrap-grid.rtl.min.css.map │ │ ├── bootstrap-reboot.css │ │ ├── bootstrap-reboot.css.map │ │ ├── bootstrap-reboot.min.css │ │ ├── bootstrap-reboot.min.css.map │ │ ├── bootstrap-reboot.rtl.css │ │ ├── bootstrap-reboot.rtl.css.map │ │ ├── bootstrap-reboot.rtl.min.css │ │ ├── bootstrap-reboot.rtl.min.css.map │ │ ├── bootstrap-utilities.css │ │ ├── bootstrap-utilities.css.map │ │ ├── bootstrap-utilities.min.css │ │ ├── bootstrap-utilities.min.css.map │ │ ├── bootstrap-utilities.rtl.css │ │ ├── bootstrap-utilities.rtl.css.map │ │ ├── bootstrap-utilities.rtl.min.css │ │ ├── bootstrap-utilities.rtl.min.css.map │ │ ├── bootstrap.css │ │ ├── bootstrap.css.map │ │ ├── bootstrap.min.css │ │ ├── bootstrap.min.css.map │ │ ├── bootstrap.rtl.css │ │ ├── bootstrap.rtl.css.map │ │ ├── bootstrap.rtl.min.css │ │ └── bootstrap.rtl.min.css.map │ └── js │ │ ├── bootstrap.bundle.js │ │ ├── bootstrap.bundle.js.map │ │ ├── bootstrap.bundle.min.js │ │ ├── bootstrap.bundle.min.js.map │ │ ├── bootstrap.esm.js │ │ ├── bootstrap.esm.js.map │ │ ├── bootstrap.esm.min.js │ │ ├── bootstrap.esm.min.js.map │ │ ├── bootstrap.js │ │ ├── bootstrap.js.map │ │ ├── bootstrap.min.js │ │ └── bootstrap.min.js.map │ ├── glightbox │ ├── css │ │ ├── glightbox.css │ │ ├── glightbox.min.css │ │ ├── plyr.css │ │ └── plyr.min.css │ └── js │ │ ├── glightbox.js │ │ └── glightbox.min.js │ ├── isotope-layout │ ├── isotope.pkgd.js │ └── isotope.pkgd.min.js │ ├── php-email-form │ └── validate.js │ ├── purecounter │ └── purecounter_vanilla.js │ ├── remixicon │ ├── remixicon.css │ ├── remixicon.eot │ ├── remixicon.less │ ├── remixicon.svg │ ├── remixicon.symbol.svg │ ├── remixicon.ttf │ ├── remixicon.woff │ └── remixicon.woff2 │ └── swiper │ ├── swiper-bundle.min.css │ ├── swiper-bundle.min.js │ └── swiper-bundle.min.js.map ├── checkdata.php ├── checkedtodo.php ├── congrat.php ├── db_connected └── index.php ├── delete_todo.php ├── edit ├── edit.phtml └── index.php ├── edituser ├── edituser.phtml └── index.php ├── index.php ├── layout.phtml ├── log_out.php ├── login ├── index.php └── login.phtml ├── profiluser ├── index.php └── profiluser.phtml ├── send.php ├── signup ├── index.php └── signup.phtml ├── storage └── e38ea6ee058cd8fac11a95a09fd03f69Array ├── test.php └── todo_app_dsi22.sql /ForgotPassword/ForgotPassword.phtml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 |
10 |
11 |
12 |
13 |
14 |

Forgot Password

15 | 16 |
17 | 18 |
19 | 20 | 21 | 22 |
23 |
24 |
25 | 26 |
27 | 28 |
29 |
30 |
31 | 32 |
33 |
34 |
35 | 36 |
37 |
38 |
39 |
40 | -------------------------------------------------------------------------------- /ForgotPassword/index.php: -------------------------------------------------------------------------------- 1 | prepare("SELECT * from users where email=:email"); 15 | $CheckUser->execute(['email'=>$email]); 16 | $user=$CheckUser->fetch(); 17 | if($CheckUser->rowCount()>0){ 18 | $token=rand(10,9999); 19 | $sql=$pdo->prepare("UPDATE users SET PasswordToken=:token where id=:id"); 20 | $sql->execute(['token'=>$token,'id'=>$user['id']]); 21 | sendmail("Bizo Officel",$email,"Reset Password","Votre code :".$token); 22 | header("location:../ResetPassword"); 23 | }else{ 24 | header("location:index.php?msg=user doesn't exist"); 25 | } 26 | } 27 | $show=true; 28 | $template="ForgotPassword"; 29 | $page_titel="ForgotPassword"; 30 | include "../layout.phtml"; 31 | ?> -------------------------------------------------------------------------------- /PHPMailer/Exception.php: -------------------------------------------------------------------------------- 1 | 10 | * @author Jim Jagielski (jimjag) 11 | * @author Andy Prevost (codeworxtech) 12 | * @author Brent R. Matzelle (original founder) 13 | * @copyright 2012 - 2020 Marcus Bointon 14 | * @copyright 2010 - 2012 Jim Jagielski 15 | * @copyright 2004 - 2009 Andy Prevost 16 | * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License 17 | * @note This program is distributed in the hope that it will be useful - WITHOUT 18 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 19 | * FITNESS FOR A PARTICULAR PURPOSE. 20 | */ 21 | 22 | namespace PHPMailer\PHPMailer; 23 | 24 | /** 25 | * PHPMailer exception handler. 26 | * 27 | * @author Marcus Bointon 28 | */ 29 | class Exception extends \Exception 30 | { 31 | /** 32 | * Prettify error message output. 33 | * 34 | * @return string 35 | */ 36 | public function errorMessage() 37 | { 38 | return '' . htmlspecialchars($this->getMessage(), ENT_COMPAT | ENT_HTML401) . "
\n"; 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /PHPMailer/OAuth.php: -------------------------------------------------------------------------------- 1 | 10 | * @author Jim Jagielski (jimjag) 11 | * @author Andy Prevost (codeworxtech) 12 | * @author Brent R. Matzelle (original founder) 13 | * @copyright 2012 - 2020 Marcus Bointon 14 | * @copyright 2010 - 2012 Jim Jagielski 15 | * @copyright 2004 - 2009 Andy Prevost 16 | * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License 17 | * @note This program is distributed in the hope that it will be useful - WITHOUT 18 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 19 | * FITNESS FOR A PARTICULAR PURPOSE. 20 | */ 21 | 22 | namespace PHPMailer\PHPMailer; 23 | 24 | use League\OAuth2\Client\Grant\RefreshToken; 25 | use League\OAuth2\Client\Provider\AbstractProvider; 26 | use League\OAuth2\Client\Token\AccessToken; 27 | 28 | /** 29 | * OAuth - OAuth2 authentication wrapper class. 30 | * Uses the oauth2-client package from the League of Extraordinary Packages. 31 | * 32 | * @see http://oauth2-client.thephpleague.com 33 | * 34 | * @author Marcus Bointon (Synchro/coolbru) 35 | */ 36 | class OAuth 37 | { 38 | /** 39 | * An instance of the League OAuth Client Provider. 40 | * 41 | * @var AbstractProvider 42 | */ 43 | protected $provider; 44 | 45 | /** 46 | * The current OAuth access token. 47 | * 48 | * @var AccessToken 49 | */ 50 | protected $oauthToken; 51 | 52 | /** 53 | * The user's email address, usually used as the login ID 54 | * and also the from address when sending email. 55 | * 56 | * @var string 57 | */ 58 | protected $oauthUserEmail = ''; 59 | 60 | /** 61 | * The client secret, generated in the app definition of the service you're connecting to. 62 | * 63 | * @var string 64 | */ 65 | protected $oauthClientSecret = ''; 66 | 67 | /** 68 | * The client ID, generated in the app definition of the service you're connecting to. 69 | * 70 | * @var string 71 | */ 72 | protected $oauthClientId = ''; 73 | 74 | /** 75 | * The refresh token, used to obtain new AccessTokens. 76 | * 77 | * @var string 78 | */ 79 | protected $oauthRefreshToken = ''; 80 | 81 | /** 82 | * OAuth constructor. 83 | * 84 | * @param array $options Associative array containing 85 | * `provider`, `userName`, `clientSecret`, `clientId` and `refreshToken` elements 86 | */ 87 | public function __construct($options) 88 | { 89 | $this->provider = $options['provider']; 90 | $this->oauthUserEmail = $options['userName']; 91 | $this->oauthClientSecret = $options['clientSecret']; 92 | $this->oauthClientId = $options['clientId']; 93 | $this->oauthRefreshToken = $options['refreshToken']; 94 | } 95 | 96 | /** 97 | * Get a new RefreshToken. 98 | * 99 | * @return RefreshToken 100 | */ 101 | protected function getGrant() 102 | { 103 | return new RefreshToken(); 104 | } 105 | 106 | /** 107 | * Get a new AccessToken. 108 | * 109 | * @return AccessToken 110 | */ 111 | protected function getToken() 112 | { 113 | return $this->provider->getAccessToken( 114 | $this->getGrant(), 115 | ['refresh_token' => $this->oauthRefreshToken] 116 | ); 117 | } 118 | 119 | /** 120 | * Generate a base64-encoded OAuth token. 121 | * 122 | * @return string 123 | */ 124 | public function getOauth64() 125 | { 126 | //Get a new token if it's not available or has expired 127 | if (null === $this->oauthToken || $this->oauthToken->hasExpired()) { 128 | $this->oauthToken = $this->getToken(); 129 | } 130 | 131 | return base64_encode( 132 | 'user=' . 133 | $this->oauthUserEmail . 134 | "\001auth=Bearer " . 135 | $this->oauthToken . 136 | "\001\001" 137 | ); 138 | } 139 | } 140 | -------------------------------------------------------------------------------- /PHPMailer/POP3.php: -------------------------------------------------------------------------------- 1 | 10 | * @author Jim Jagielski (jimjag) 11 | * @author Andy Prevost (codeworxtech) 12 | * @author Brent R. Matzelle (original founder) 13 | * @copyright 2012 - 2020 Marcus Bointon 14 | * @copyright 2010 - 2012 Jim Jagielski 15 | * @copyright 2004 - 2009 Andy Prevost 16 | * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License 17 | * @note This program is distributed in the hope that it will be useful - WITHOUT 18 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 19 | * FITNESS FOR A PARTICULAR PURPOSE. 20 | */ 21 | 22 | namespace PHPMailer\PHPMailer; 23 | 24 | /** 25 | * PHPMailer POP-Before-SMTP Authentication Class. 26 | * Specifically for PHPMailer to use for RFC1939 POP-before-SMTP authentication. 27 | * 1) This class does not support APOP authentication. 28 | * 2) Opening and closing lots of POP3 connections can be quite slow. If you need 29 | * to send a batch of emails then just perform the authentication once at the start, 30 | * and then loop through your mail sending script. Providing this process doesn't 31 | * take longer than the verification period lasts on your POP3 server, you should be fine. 32 | * 3) This is really ancient technology; you should only need to use it to talk to very old systems. 33 | * 4) This POP3 class is deliberately lightweight and incomplete, implementing just 34 | * enough to do authentication. 35 | * If you want a more complete class there are other POP3 classes for PHP available. 36 | * 37 | * @author Richard Davey (original author) 38 | * @author Marcus Bointon (Synchro/coolbru) 39 | * @author Jim Jagielski (jimjag) 40 | * @author Andy Prevost (codeworxtech) 41 | */ 42 | class POP3 43 | { 44 | /** 45 | * The POP3 PHPMailer Version number. 46 | * 47 | * @var string 48 | */ 49 | const VERSION = '6.5.0'; 50 | 51 | /** 52 | * Default POP3 port number. 53 | * 54 | * @var int 55 | */ 56 | const DEFAULT_PORT = 110; 57 | 58 | /** 59 | * Default timeout in seconds. 60 | * 61 | * @var int 62 | */ 63 | const DEFAULT_TIMEOUT = 30; 64 | 65 | /** 66 | * POP3 class debug output mode. 67 | * Debug output level. 68 | * Options: 69 | * @see POP3::DEBUG_OFF: No output 70 | * @see POP3::DEBUG_SERVER: Server messages, connection/server errors 71 | * @see POP3::DEBUG_CLIENT: Client and Server messages, connection/server errors 72 | * 73 | * @var int 74 | */ 75 | public $do_debug = self::DEBUG_OFF; 76 | 77 | /** 78 | * POP3 mail server hostname. 79 | * 80 | * @var string 81 | */ 82 | public $host; 83 | 84 | /** 85 | * POP3 port number. 86 | * 87 | * @var int 88 | */ 89 | public $port; 90 | 91 | /** 92 | * POP3 Timeout Value in seconds. 93 | * 94 | * @var int 95 | */ 96 | public $tval; 97 | 98 | /** 99 | * POP3 username. 100 | * 101 | * @var string 102 | */ 103 | public $username; 104 | 105 | /** 106 | * POP3 password. 107 | * 108 | * @var string 109 | */ 110 | public $password; 111 | 112 | /** 113 | * Resource handle for the POP3 connection socket. 114 | * 115 | * @var resource 116 | */ 117 | protected $pop_conn; 118 | 119 | /** 120 | * Are we connected? 121 | * 122 | * @var bool 123 | */ 124 | protected $connected = false; 125 | 126 | /** 127 | * Error container. 128 | * 129 | * @var array 130 | */ 131 | protected $errors = []; 132 | 133 | /** 134 | * Line break constant. 135 | */ 136 | const LE = "\r\n"; 137 | 138 | /** 139 | * Debug level for no output. 140 | * 141 | * @var int 142 | */ 143 | const DEBUG_OFF = 0; 144 | 145 | /** 146 | * Debug level to show server -> client messages 147 | * also shows clients connection errors or errors from server 148 | * 149 | * @var int 150 | */ 151 | const DEBUG_SERVER = 1; 152 | 153 | /** 154 | * Debug level to show client -> server and server -> client messages. 155 | * 156 | * @var int 157 | */ 158 | const DEBUG_CLIENT = 2; 159 | 160 | /** 161 | * Simple static wrapper for all-in-one POP before SMTP. 162 | * 163 | * @param string $host The hostname to connect to 164 | * @param int|bool $port The port number to connect to 165 | * @param int|bool $timeout The timeout value 166 | * @param string $username 167 | * @param string $password 168 | * @param int $debug_level 169 | * 170 | * @return bool 171 | */ 172 | public static function popBeforeSmtp( 173 | $host, 174 | $port = false, 175 | $timeout = false, 176 | $username = '', 177 | $password = '', 178 | $debug_level = 0 179 | ) { 180 | $pop = new self(); 181 | 182 | return $pop->authorise($host, $port, $timeout, $username, $password, $debug_level); 183 | } 184 | 185 | /** 186 | * Authenticate with a POP3 server. 187 | * A connect, login, disconnect sequence 188 | * appropriate for POP-before SMTP authorisation. 189 | * 190 | * @param string $host The hostname to connect to 191 | * @param int|bool $port The port number to connect to 192 | * @param int|bool $timeout The timeout value 193 | * @param string $username 194 | * @param string $password 195 | * @param int $debug_level 196 | * 197 | * @return bool 198 | */ 199 | public function authorise($host, $port = false, $timeout = false, $username = '', $password = '', $debug_level = 0) 200 | { 201 | $this->host = $host; 202 | //If no port value provided, use default 203 | if (false === $port) { 204 | $this->port = static::DEFAULT_PORT; 205 | } else { 206 | $this->port = (int) $port; 207 | } 208 | //If no timeout value provided, use default 209 | if (false === $timeout) { 210 | $this->tval = static::DEFAULT_TIMEOUT; 211 | } else { 212 | $this->tval = (int) $timeout; 213 | } 214 | $this->do_debug = $debug_level; 215 | $this->username = $username; 216 | $this->password = $password; 217 | //Reset the error log 218 | $this->errors = []; 219 | //Connect 220 | $result = $this->connect($this->host, $this->port, $this->tval); 221 | if ($result) { 222 | $login_result = $this->login($this->username, $this->password); 223 | if ($login_result) { 224 | $this->disconnect(); 225 | 226 | return true; 227 | } 228 | } 229 | //We need to disconnect regardless of whether the login succeeded 230 | $this->disconnect(); 231 | 232 | return false; 233 | } 234 | 235 | /** 236 | * Connect to a POP3 server. 237 | * 238 | * @param string $host 239 | * @param int|bool $port 240 | * @param int $tval 241 | * 242 | * @return bool 243 | */ 244 | public function connect($host, $port = false, $tval = 30) 245 | { 246 | //Are we already connected? 247 | if ($this->connected) { 248 | return true; 249 | } 250 | 251 | //On Windows this will raise a PHP Warning error if the hostname doesn't exist. 252 | //Rather than suppress it with @fsockopen, capture it cleanly instead 253 | set_error_handler([$this, 'catchWarning']); 254 | 255 | if (false === $port) { 256 | $port = static::DEFAULT_PORT; 257 | } 258 | 259 | //Connect to the POP3 server 260 | $errno = 0; 261 | $errstr = ''; 262 | $this->pop_conn = fsockopen( 263 | $host, //POP3 Host 264 | $port, //Port # 265 | $errno, //Error Number 266 | $errstr, //Error Message 267 | $tval 268 | ); //Timeout (seconds) 269 | //Restore the error handler 270 | restore_error_handler(); 271 | 272 | //Did we connect? 273 | if (false === $this->pop_conn) { 274 | //It would appear not... 275 | $this->setError( 276 | "Failed to connect to server $host on port $port. errno: $errno; errstr: $errstr" 277 | ); 278 | 279 | return false; 280 | } 281 | 282 | //Increase the stream time-out 283 | stream_set_timeout($this->pop_conn, $tval, 0); 284 | 285 | //Get the POP3 server response 286 | $pop3_response = $this->getResponse(); 287 | //Check for the +OK 288 | if ($this->checkResponse($pop3_response)) { 289 | //The connection is established and the POP3 server is talking 290 | $this->connected = true; 291 | 292 | return true; 293 | } 294 | 295 | return false; 296 | } 297 | 298 | /** 299 | * Log in to the POP3 server. 300 | * Does not support APOP (RFC 2828, 4949). 301 | * 302 | * @param string $username 303 | * @param string $password 304 | * 305 | * @return bool 306 | */ 307 | public function login($username = '', $password = '') 308 | { 309 | if (!$this->connected) { 310 | $this->setError('Not connected to POP3 server'); 311 | } 312 | if (empty($username)) { 313 | $username = $this->username; 314 | } 315 | if (empty($password)) { 316 | $password = $this->password; 317 | } 318 | 319 | //Send the Username 320 | $this->sendString("USER $username" . static::LE); 321 | $pop3_response = $this->getResponse(); 322 | if ($this->checkResponse($pop3_response)) { 323 | //Send the Password 324 | $this->sendString("PASS $password" . static::LE); 325 | $pop3_response = $this->getResponse(); 326 | if ($this->checkResponse($pop3_response)) { 327 | return true; 328 | } 329 | } 330 | 331 | return false; 332 | } 333 | 334 | /** 335 | * Disconnect from the POP3 server. 336 | */ 337 | public function disconnect() 338 | { 339 | $this->sendString('QUIT'); 340 | //The QUIT command may cause the daemon to exit, which will kill our connection 341 | //So ignore errors here 342 | try { 343 | @fclose($this->pop_conn); 344 | } catch (Exception $e) { 345 | //Do nothing 346 | } 347 | } 348 | 349 | /** 350 | * Get a response from the POP3 server. 351 | * 352 | * @param int $size The maximum number of bytes to retrieve 353 | * 354 | * @return string 355 | */ 356 | protected function getResponse($size = 128) 357 | { 358 | $response = fgets($this->pop_conn, $size); 359 | if ($this->do_debug >= self::DEBUG_SERVER) { 360 | echo 'Server -> Client: ', $response; 361 | } 362 | 363 | return $response; 364 | } 365 | 366 | /** 367 | * Send raw data to the POP3 server. 368 | * 369 | * @param string $string 370 | * 371 | * @return int 372 | */ 373 | protected function sendString($string) 374 | { 375 | if ($this->pop_conn) { 376 | if ($this->do_debug >= self::DEBUG_CLIENT) { //Show client messages when debug >= 2 377 | echo 'Client -> Server: ', $string; 378 | } 379 | 380 | return fwrite($this->pop_conn, $string, strlen($string)); 381 | } 382 | 383 | return 0; 384 | } 385 | 386 | /** 387 | * Checks the POP3 server response. 388 | * Looks for for +OK or -ERR. 389 | * 390 | * @param string $string 391 | * 392 | * @return bool 393 | */ 394 | protected function checkResponse($string) 395 | { 396 | if (strpos($string, '+OK') !== 0) { 397 | $this->setError("Server reported an error: $string"); 398 | 399 | return false; 400 | } 401 | 402 | return true; 403 | } 404 | 405 | /** 406 | * Add an error to the internal error store. 407 | * Also display debug output if it's enabled. 408 | * 409 | * @param string $error 410 | */ 411 | protected function setError($error) 412 | { 413 | $this->errors[] = $error; 414 | if ($this->do_debug >= self::DEBUG_SERVER) { 415 | echo '
';
416 |             foreach ($this->errors as $e) {
417 |                 print_r($e);
418 |             }
419 |             echo '
'; 420 | } 421 | } 422 | 423 | /** 424 | * Get an array of error messages, if any. 425 | * 426 | * @return array 427 | */ 428 | public function getErrors() 429 | { 430 | return $this->errors; 431 | } 432 | 433 | /** 434 | * POP3 connection error handler. 435 | * 436 | * @param int $errno 437 | * @param string $errstr 438 | * @param string $errfile 439 | * @param int $errline 440 | */ 441 | protected function catchWarning($errno, $errstr, $errfile, $errline) 442 | { 443 | $this->setError( 444 | 'Connecting to the POP3 server raised a PHP warning:' . 445 | "errno: $errno errstr: $errstr; errfile: $errfile; errline: $errline" 446 | ); 447 | } 448 | } 449 | -------------------------------------------------------------------------------- /ResetPassword/ResetPassword.phtml: -------------------------------------------------------------------------------- 1 | 7 |
8 |
9 |
10 |
11 | 12 |
13 |

Reset Password

14 | 15 |
16 | 17 |
18 | 19 | 20 | 21 | 22 |
23 | 24 |
25 |
26 |
27 | 28 | 29 |
30 | 31 |
32 | 33 | 34 |
35 |
36 |

Changer Password

37 | 38 | 41 | 42 | > 43 | 44 | 45 | 46 |
47 | 48 |
49 |
50 | 51 |
52 |
53 |
54 |
-------------------------------------------------------------------------------- /ResetPassword/index.php: -------------------------------------------------------------------------------- 1 | prepare("SELECT * from users where email=:email AND PasswordToken=:code"); 20 | $check_code->execute(['email'=>$email,'code'=>$code]); 21 | $testCHeck=$check_code->fetch(); 22 | $id=$testCHeck['id']; 23 | 24 | if(!$testCHeck){ 25 | $step=1; 26 | header("location:index.php?msg=Please check the code or the email"); 27 | exit; 28 | }else{ 29 | //header("location:index.php?id=".$id); 30 | $step=0; 31 | } 32 | } 33 | 34 | if(isset($_POST['submit'])){ 35 | $step=0; 36 | extract($_POST); 37 | $step=0; 38 | if(empty($password)){ 39 | $step=0; 40 | $error[0]="password required "; 41 | goto show; 42 | } 43 | else if(empty($confirm)){ 44 | $step=0; 45 | $error[0]="confirm required "; 46 | goto show; 47 | } 48 | else if($confirm!=$password){ 49 | $step=0; 50 | $error[0]="confirm should be like password "; 51 | goto show; 52 | }else{ 53 | $step=0; 54 | $sql=$pdo->prepare("UPDATE users SET password=:pass where id=:id"); 55 | $sql->execute( 56 | [ 57 | 'id'=>$id, 58 | 'pass'=>password_hash($password,PASSWORD_DEFAULT) 59 | ] 60 | ); 61 | header("location:../login?msg=password has been changed&type=success"); 62 | exit; 63 | } 64 | } 65 | 66 | show: 67 | $show=true; 68 | $template="ResetPassword"; 69 | $page_titel="ResetPassword"; 70 | include "../layout.phtml"; 71 | 72 | ?> -------------------------------------------------------------------------------- /add_todo/add_todo.phtml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 |
11 |
12 |
13 |
14 |
15 |

Add Todo :

16 |
17 |
18 | 0): ?> 19 |
20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
32 |
33 |
34 |
35 | 36 |
37 |
38 |
39 |
40 | 41 | -------------------------------------------------------------------------------- /add_todo/index.php: -------------------------------------------------------------------------------- 1 | prepare("INSERT INTO `todos`(`titel`, `due_date`, `description`, `complete`, `id_user`) VALUES (:titel,:date,:desc,:complete,:iduser) "); 21 | $sql->execute([ 22 | 'titel'=>$titel, 23 | 'date'=>$date, 24 | 'desc'=>$description, 25 | 'complete'=>0, 26 | 'iduser'=>$_SESSION['iduser'] 27 | ]); 28 | header("location:../profiluser"); 29 | } 30 | } 31 | show: 32 | $show=null; 33 | $page_titel="add todo"; 34 | $template="add_todo"; 35 | include "../layout.phtml"; 36 | 37 | ?> -------------------------------------------------------------------------------- /assets/bootstrap-5.1.3-dist/css/bootstrap-reboot.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Bootstrap Reboot v5.1.3 (https://getbootstrap.com/) 3 | * Copyright 2011-2021 The Bootstrap Authors 4 | * Copyright 2011-2021 Twitter, Inc. 5 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) 6 | * Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md) 7 | */ 8 | :root { 9 | --bs-blue: #0d6efd; 10 | --bs-indigo: #6610f2; 11 | --bs-purple: #6f42c1; 12 | --bs-pink: #d63384; 13 | --bs-red: #dc3545; 14 | --bs-orange: #fd7e14; 15 | --bs-yellow: #ffc107; 16 | --bs-green: #198754; 17 | --bs-teal: #20c997; 18 | --bs-cyan: #0dcaf0; 19 | --bs-white: #fff; 20 | --bs-gray: #6c757d; 21 | --bs-gray-dark: #343a40; 22 | --bs-gray-100: #f8f9fa; 23 | --bs-gray-200: #e9ecef; 24 | --bs-gray-300: #dee2e6; 25 | --bs-gray-400: #ced4da; 26 | --bs-gray-500: #adb5bd; 27 | --bs-gray-600: #6c757d; 28 | --bs-gray-700: #495057; 29 | --bs-gray-800: #343a40; 30 | --bs-gray-900: #212529; 31 | --bs-primary: #0d6efd; 32 | --bs-secondary: #6c757d; 33 | --bs-success: #198754; 34 | --bs-info: #0dcaf0; 35 | --bs-warning: #ffc107; 36 | --bs-danger: #dc3545; 37 | --bs-light: #f8f9fa; 38 | --bs-dark: #212529; 39 | --bs-primary-rgb: 13, 110, 253; 40 | --bs-secondary-rgb: 108, 117, 125; 41 | --bs-success-rgb: 25, 135, 84; 42 | --bs-info-rgb: 13, 202, 240; 43 | --bs-warning-rgb: 255, 193, 7; 44 | --bs-danger-rgb: 220, 53, 69; 45 | --bs-light-rgb: 248, 249, 250; 46 | --bs-dark-rgb: 33, 37, 41; 47 | --bs-white-rgb: 255, 255, 255; 48 | --bs-black-rgb: 0, 0, 0; 49 | --bs-body-color-rgb: 33, 37, 41; 50 | --bs-body-bg-rgb: 255, 255, 255; 51 | --bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; 52 | --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; 53 | --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0)); 54 | --bs-body-font-family: var(--bs-font-sans-serif); 55 | --bs-body-font-size: 1rem; 56 | --bs-body-font-weight: 400; 57 | --bs-body-line-height: 1.5; 58 | --bs-body-color: #212529; 59 | --bs-body-bg: #fff; 60 | } 61 | 62 | *, 63 | *::before, 64 | *::after { 65 | box-sizing: border-box; 66 | } 67 | 68 | @media (prefers-reduced-motion: no-preference) { 69 | :root { 70 | scroll-behavior: smooth; 71 | } 72 | } 73 | 74 | body { 75 | margin: 0; 76 | font-family: var(--bs-body-font-family); 77 | font-size: var(--bs-body-font-size); 78 | font-weight: var(--bs-body-font-weight); 79 | line-height: var(--bs-body-line-height); 80 | color: var(--bs-body-color); 81 | text-align: var(--bs-body-text-align); 82 | background-color: var(--bs-body-bg); 83 | -webkit-text-size-adjust: 100%; 84 | -webkit-tap-highlight-color: rgba(0, 0, 0, 0); 85 | } 86 | 87 | hr { 88 | margin: 1rem 0; 89 | color: inherit; 90 | background-color: currentColor; 91 | border: 0; 92 | opacity: 0.25; 93 | } 94 | 95 | hr:not([size]) { 96 | height: 1px; 97 | } 98 | 99 | h6, h5, h4, h3, h2, h1 { 100 | margin-top: 0; 101 | margin-bottom: 0.5rem; 102 | font-weight: 500; 103 | line-height: 1.2; 104 | } 105 | 106 | h1 { 107 | font-size: calc(1.375rem + 1.5vw); 108 | } 109 | @media (min-width: 1200px) { 110 | h1 { 111 | font-size: 2.5rem; 112 | } 113 | } 114 | 115 | h2 { 116 | font-size: calc(1.325rem + 0.9vw); 117 | } 118 | @media (min-width: 1200px) { 119 | h2 { 120 | font-size: 2rem; 121 | } 122 | } 123 | 124 | h3 { 125 | font-size: calc(1.3rem + 0.6vw); 126 | } 127 | @media (min-width: 1200px) { 128 | h3 { 129 | font-size: 1.75rem; 130 | } 131 | } 132 | 133 | h4 { 134 | font-size: calc(1.275rem + 0.3vw); 135 | } 136 | @media (min-width: 1200px) { 137 | h4 { 138 | font-size: 1.5rem; 139 | } 140 | } 141 | 142 | h5 { 143 | font-size: 1.25rem; 144 | } 145 | 146 | h6 { 147 | font-size: 1rem; 148 | } 149 | 150 | p { 151 | margin-top: 0; 152 | margin-bottom: 1rem; 153 | } 154 | 155 | abbr[title], 156 | abbr[data-bs-original-title] { 157 | -webkit-text-decoration: underline dotted; 158 | text-decoration: underline dotted; 159 | cursor: help; 160 | -webkit-text-decoration-skip-ink: none; 161 | text-decoration-skip-ink: none; 162 | } 163 | 164 | address { 165 | margin-bottom: 1rem; 166 | font-style: normal; 167 | line-height: inherit; 168 | } 169 | 170 | ol, 171 | ul { 172 | padding-left: 2rem; 173 | } 174 | 175 | ol, 176 | ul, 177 | dl { 178 | margin-top: 0; 179 | margin-bottom: 1rem; 180 | } 181 | 182 | ol ol, 183 | ul ul, 184 | ol ul, 185 | ul ol { 186 | margin-bottom: 0; 187 | } 188 | 189 | dt { 190 | font-weight: 700; 191 | } 192 | 193 | dd { 194 | margin-bottom: 0.5rem; 195 | margin-left: 0; 196 | } 197 | 198 | blockquote { 199 | margin: 0 0 1rem; 200 | } 201 | 202 | b, 203 | strong { 204 | font-weight: bolder; 205 | } 206 | 207 | small { 208 | font-size: 0.875em; 209 | } 210 | 211 | mark { 212 | padding: 0.2em; 213 | background-color: #fcf8e3; 214 | } 215 | 216 | sub, 217 | sup { 218 | position: relative; 219 | font-size: 0.75em; 220 | line-height: 0; 221 | vertical-align: baseline; 222 | } 223 | 224 | sub { 225 | bottom: -0.25em; 226 | } 227 | 228 | sup { 229 | top: -0.5em; 230 | } 231 | 232 | a { 233 | color: #0d6efd; 234 | text-decoration: underline; 235 | } 236 | a:hover { 237 | color: #0a58ca; 238 | } 239 | 240 | a:not([href]):not([class]), a:not([href]):not([class]):hover { 241 | color: inherit; 242 | text-decoration: none; 243 | } 244 | 245 | pre, 246 | code, 247 | kbd, 248 | samp { 249 | font-family: var(--bs-font-monospace); 250 | font-size: 1em; 251 | direction: ltr /* rtl:ignore */; 252 | unicode-bidi: bidi-override; 253 | } 254 | 255 | pre { 256 | display: block; 257 | margin-top: 0; 258 | margin-bottom: 1rem; 259 | overflow: auto; 260 | font-size: 0.875em; 261 | } 262 | pre code { 263 | font-size: inherit; 264 | color: inherit; 265 | word-break: normal; 266 | } 267 | 268 | code { 269 | font-size: 0.875em; 270 | color: #d63384; 271 | word-wrap: break-word; 272 | } 273 | a > code { 274 | color: inherit; 275 | } 276 | 277 | kbd { 278 | padding: 0.2rem 0.4rem; 279 | font-size: 0.875em; 280 | color: #fff; 281 | background-color: #212529; 282 | border-radius: 0.2rem; 283 | } 284 | kbd kbd { 285 | padding: 0; 286 | font-size: 1em; 287 | font-weight: 700; 288 | } 289 | 290 | figure { 291 | margin: 0 0 1rem; 292 | } 293 | 294 | img, 295 | svg { 296 | vertical-align: middle; 297 | } 298 | 299 | table { 300 | caption-side: bottom; 301 | border-collapse: collapse; 302 | } 303 | 304 | caption { 305 | padding-top: 0.5rem; 306 | padding-bottom: 0.5rem; 307 | color: #6c757d; 308 | text-align: left; 309 | } 310 | 311 | th { 312 | text-align: inherit; 313 | text-align: -webkit-match-parent; 314 | } 315 | 316 | thead, 317 | tbody, 318 | tfoot, 319 | tr, 320 | td, 321 | th { 322 | border-color: inherit; 323 | border-style: solid; 324 | border-width: 0; 325 | } 326 | 327 | label { 328 | display: inline-block; 329 | } 330 | 331 | button { 332 | border-radius: 0; 333 | } 334 | 335 | button:focus:not(:focus-visible) { 336 | outline: 0; 337 | } 338 | 339 | input, 340 | button, 341 | select, 342 | optgroup, 343 | textarea { 344 | margin: 0; 345 | font-family: inherit; 346 | font-size: inherit; 347 | line-height: inherit; 348 | } 349 | 350 | button, 351 | select { 352 | text-transform: none; 353 | } 354 | 355 | [role=button] { 356 | cursor: pointer; 357 | } 358 | 359 | select { 360 | word-wrap: normal; 361 | } 362 | select:disabled { 363 | opacity: 1; 364 | } 365 | 366 | [list]::-webkit-calendar-picker-indicator { 367 | display: none; 368 | } 369 | 370 | button, 371 | [type=button], 372 | [type=reset], 373 | [type=submit] { 374 | -webkit-appearance: button; 375 | } 376 | button:not(:disabled), 377 | [type=button]:not(:disabled), 378 | [type=reset]:not(:disabled), 379 | [type=submit]:not(:disabled) { 380 | cursor: pointer; 381 | } 382 | 383 | ::-moz-focus-inner { 384 | padding: 0; 385 | border-style: none; 386 | } 387 | 388 | textarea { 389 | resize: vertical; 390 | } 391 | 392 | fieldset { 393 | min-width: 0; 394 | padding: 0; 395 | margin: 0; 396 | border: 0; 397 | } 398 | 399 | legend { 400 | float: left; 401 | width: 100%; 402 | padding: 0; 403 | margin-bottom: 0.5rem; 404 | font-size: calc(1.275rem + 0.3vw); 405 | line-height: inherit; 406 | } 407 | @media (min-width: 1200px) { 408 | legend { 409 | font-size: 1.5rem; 410 | } 411 | } 412 | legend + * { 413 | clear: left; 414 | } 415 | 416 | ::-webkit-datetime-edit-fields-wrapper, 417 | ::-webkit-datetime-edit-text, 418 | ::-webkit-datetime-edit-minute, 419 | ::-webkit-datetime-edit-hour-field, 420 | ::-webkit-datetime-edit-day-field, 421 | ::-webkit-datetime-edit-month-field, 422 | ::-webkit-datetime-edit-year-field { 423 | padding: 0; 424 | } 425 | 426 | ::-webkit-inner-spin-button { 427 | height: auto; 428 | } 429 | 430 | [type=search] { 431 | outline-offset: -2px; 432 | -webkit-appearance: textfield; 433 | } 434 | 435 | /* rtl:raw: 436 | [type="tel"], 437 | [type="url"], 438 | [type="email"], 439 | [type="number"] { 440 | direction: ltr; 441 | } 442 | */ 443 | ::-webkit-search-decoration { 444 | -webkit-appearance: none; 445 | } 446 | 447 | ::-webkit-color-swatch-wrapper { 448 | padding: 0; 449 | } 450 | 451 | ::-webkit-file-upload-button { 452 | font: inherit; 453 | } 454 | 455 | ::file-selector-button { 456 | font: inherit; 457 | } 458 | 459 | ::-webkit-file-upload-button { 460 | font: inherit; 461 | -webkit-appearance: button; 462 | } 463 | 464 | output { 465 | display: inline-block; 466 | } 467 | 468 | iframe { 469 | border: 0; 470 | } 471 | 472 | summary { 473 | display: list-item; 474 | cursor: pointer; 475 | } 476 | 477 | progress { 478 | vertical-align: baseline; 479 | } 480 | 481 | [hidden] { 482 | display: none !important; 483 | } 484 | 485 | /*# sourceMappingURL=bootstrap-reboot.css.map */ -------------------------------------------------------------------------------- /assets/bootstrap-5.1.3-dist/css/bootstrap-reboot.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Bootstrap Reboot v5.1.3 (https://getbootstrap.com/) 3 | * Copyright 2011-2021 The Bootstrap Authors 4 | * Copyright 2011-2021 Twitter, Inc. 5 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) 6 | * Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md) 7 | */:root{--bs-blue:#0d6efd;--bs-indigo:#6610f2;--bs-purple:#6f42c1;--bs-pink:#d63384;--bs-red:#dc3545;--bs-orange:#fd7e14;--bs-yellow:#ffc107;--bs-green:#198754;--bs-teal:#20c997;--bs-cyan:#0dcaf0;--bs-white:#fff;--bs-gray:#6c757d;--bs-gray-dark:#343a40;--bs-gray-100:#f8f9fa;--bs-gray-200:#e9ecef;--bs-gray-300:#dee2e6;--bs-gray-400:#ced4da;--bs-gray-500:#adb5bd;--bs-gray-600:#6c757d;--bs-gray-700:#495057;--bs-gray-800:#343a40;--bs-gray-900:#212529;--bs-primary:#0d6efd;--bs-secondary:#6c757d;--bs-success:#198754;--bs-info:#0dcaf0;--bs-warning:#ffc107;--bs-danger:#dc3545;--bs-light:#f8f9fa;--bs-dark:#212529;--bs-primary-rgb:13,110,253;--bs-secondary-rgb:108,117,125;--bs-success-rgb:25,135,84;--bs-info-rgb:13,202,240;--bs-warning-rgb:255,193,7;--bs-danger-rgb:220,53,69;--bs-light-rgb:248,249,250;--bs-dark-rgb:33,37,41;--bs-white-rgb:255,255,255;--bs-black-rgb:0,0,0;--bs-body-color-rgb:33,37,41;--bs-body-bg-rgb:255,255,255;--bs-font-sans-serif:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--bs-font-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--bs-gradient:linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));--bs-body-font-family:var(--bs-font-sans-serif);--bs-body-font-size:1rem;--bs-body-font-weight:400;--bs-body-line-height:1.5;--bs-body-color:#212529;--bs-body-bg:#fff}*,::after,::before{box-sizing:border-box}@media (prefers-reduced-motion:no-preference){:root{scroll-behavior:smooth}}body{margin:0;font-family:var(--bs-body-font-family);font-size:var(--bs-body-font-size);font-weight:var(--bs-body-font-weight);line-height:var(--bs-body-line-height);color:var(--bs-body-color);text-align:var(--bs-body-text-align);background-color:var(--bs-body-bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}hr{margin:1rem 0;color:inherit;background-color:currentColor;border:0;opacity:.25}hr:not([size]){height:1px}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem;font-weight:500;line-height:1.2}h1{font-size:calc(1.375rem + 1.5vw)}@media (min-width:1200px){h1{font-size:2.5rem}}h2{font-size:calc(1.325rem + .9vw)}@media (min-width:1200px){h2{font-size:2rem}}h3{font-size:calc(1.3rem + .6vw)}@media (min-width:1200px){h3{font-size:1.75rem}}h4{font-size:calc(1.275rem + .3vw)}@media (min-width:1200px){h4{font-size:1.5rem}}h5{font-size:1.25rem}h6{font-size:1rem}p{margin-top:0;margin-bottom:1rem}abbr[data-bs-original-title],abbr[title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}ol,ul{padding-left:2rem}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}small{font-size:.875em}mark{padding:.2em;background-color:#fcf8e3}sub,sup{position:relative;font-size:.75em;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#0d6efd;text-decoration:underline}a:hover{color:#0a58ca}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none}code,kbd,pre,samp{font-family:var(--bs-font-monospace);font-size:1em;direction:ltr;unicode-bidi:bidi-override}pre{display:block;margin-top:0;margin-bottom:1rem;overflow:auto;font-size:.875em}pre code{font-size:inherit;color:inherit;word-break:normal}code{font-size:.875em;color:#d63384;word-wrap:break-word}a>code{color:inherit}kbd{padding:.2rem .4rem;font-size:.875em;color:#fff;background-color:#212529;border-radius:.2rem}kbd kbd{padding:0;font-size:1em;font-weight:700}figure{margin:0 0 1rem}img,svg{vertical-align:middle}table{caption-side:bottom;border-collapse:collapse}caption{padding-top:.5rem;padding-bottom:.5rem;color:#6c757d;text-align:left}th{text-align:inherit;text-align:-webkit-match-parent}tbody,td,tfoot,th,thead,tr{border-color:inherit;border-style:solid;border-width:0}label{display:inline-block}button{border-radius:0}button:focus:not(:focus-visible){outline:0}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,select{text-transform:none}[role=button]{cursor:pointer}select{word-wrap:normal}select:disabled{opacity:1}[list]::-webkit-calendar-picker-indicator{display:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}::-moz-focus-inner{padding:0;border-style:none}textarea{resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{float:left;width:100%;padding:0;margin-bottom:.5rem;font-size:calc(1.275rem + .3vw);line-height:inherit}@media (min-width:1200px){legend{font-size:1.5rem}}legend+*{clear:left}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-fields-wrapper,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-text,::-webkit-datetime-edit-year-field{padding:0}::-webkit-inner-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:textfield}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::-webkit-file-upload-button{font:inherit}::file-selector-button{font:inherit}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}iframe{border:0}summary{display:list-item;cursor:pointer}progress{vertical-align:baseline}[hidden]{display:none!important} 8 | /*# sourceMappingURL=bootstrap-reboot.min.css.map */ -------------------------------------------------------------------------------- /assets/bootstrap-5.1.3-dist/css/bootstrap-reboot.rtl.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Bootstrap Reboot v5.1.3 (https://getbootstrap.com/) 3 | * Copyright 2011-2021 The Bootstrap Authors 4 | * Copyright 2011-2021 Twitter, Inc. 5 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) 6 | * Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md) 7 | */ 8 | :root { 9 | --bs-blue: #0d6efd; 10 | --bs-indigo: #6610f2; 11 | --bs-purple: #6f42c1; 12 | --bs-pink: #d63384; 13 | --bs-red: #dc3545; 14 | --bs-orange: #fd7e14; 15 | --bs-yellow: #ffc107; 16 | --bs-green: #198754; 17 | --bs-teal: #20c997; 18 | --bs-cyan: #0dcaf0; 19 | --bs-white: #fff; 20 | --bs-gray: #6c757d; 21 | --bs-gray-dark: #343a40; 22 | --bs-gray-100: #f8f9fa; 23 | --bs-gray-200: #e9ecef; 24 | --bs-gray-300: #dee2e6; 25 | --bs-gray-400: #ced4da; 26 | --bs-gray-500: #adb5bd; 27 | --bs-gray-600: #6c757d; 28 | --bs-gray-700: #495057; 29 | --bs-gray-800: #343a40; 30 | --bs-gray-900: #212529; 31 | --bs-primary: #0d6efd; 32 | --bs-secondary: #6c757d; 33 | --bs-success: #198754; 34 | --bs-info: #0dcaf0; 35 | --bs-warning: #ffc107; 36 | --bs-danger: #dc3545; 37 | --bs-light: #f8f9fa; 38 | --bs-dark: #212529; 39 | --bs-primary-rgb: 13, 110, 253; 40 | --bs-secondary-rgb: 108, 117, 125; 41 | --bs-success-rgb: 25, 135, 84; 42 | --bs-info-rgb: 13, 202, 240; 43 | --bs-warning-rgb: 255, 193, 7; 44 | --bs-danger-rgb: 220, 53, 69; 45 | --bs-light-rgb: 248, 249, 250; 46 | --bs-dark-rgb: 33, 37, 41; 47 | --bs-white-rgb: 255, 255, 255; 48 | --bs-black-rgb: 0, 0, 0; 49 | --bs-body-color-rgb: 33, 37, 41; 50 | --bs-body-bg-rgb: 255, 255, 255; 51 | --bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; 52 | --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; 53 | --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0)); 54 | --bs-body-font-family: var(--bs-font-sans-serif); 55 | --bs-body-font-size: 1rem; 56 | --bs-body-font-weight: 400; 57 | --bs-body-line-height: 1.5; 58 | --bs-body-color: #212529; 59 | --bs-body-bg: #fff; 60 | } 61 | 62 | *, 63 | *::before, 64 | *::after { 65 | box-sizing: border-box; 66 | } 67 | 68 | @media (prefers-reduced-motion: no-preference) { 69 | :root { 70 | scroll-behavior: smooth; 71 | } 72 | } 73 | 74 | body { 75 | margin: 0; 76 | font-family: var(--bs-body-font-family); 77 | font-size: var(--bs-body-font-size); 78 | font-weight: var(--bs-body-font-weight); 79 | line-height: var(--bs-body-line-height); 80 | color: var(--bs-body-color); 81 | text-align: var(--bs-body-text-align); 82 | background-color: var(--bs-body-bg); 83 | -webkit-text-size-adjust: 100%; 84 | -webkit-tap-highlight-color: rgba(0, 0, 0, 0); 85 | } 86 | 87 | hr { 88 | margin: 1rem 0; 89 | color: inherit; 90 | background-color: currentColor; 91 | border: 0; 92 | opacity: 0.25; 93 | } 94 | 95 | hr:not([size]) { 96 | height: 1px; 97 | } 98 | 99 | h6, h5, h4, h3, h2, h1 { 100 | margin-top: 0; 101 | margin-bottom: 0.5rem; 102 | font-weight: 500; 103 | line-height: 1.2; 104 | } 105 | 106 | h1 { 107 | font-size: calc(1.375rem + 1.5vw); 108 | } 109 | @media (min-width: 1200px) { 110 | h1 { 111 | font-size: 2.5rem; 112 | } 113 | } 114 | 115 | h2 { 116 | font-size: calc(1.325rem + 0.9vw); 117 | } 118 | @media (min-width: 1200px) { 119 | h2 { 120 | font-size: 2rem; 121 | } 122 | } 123 | 124 | h3 { 125 | font-size: calc(1.3rem + 0.6vw); 126 | } 127 | @media (min-width: 1200px) { 128 | h3 { 129 | font-size: 1.75rem; 130 | } 131 | } 132 | 133 | h4 { 134 | font-size: calc(1.275rem + 0.3vw); 135 | } 136 | @media (min-width: 1200px) { 137 | h4 { 138 | font-size: 1.5rem; 139 | } 140 | } 141 | 142 | h5 { 143 | font-size: 1.25rem; 144 | } 145 | 146 | h6 { 147 | font-size: 1rem; 148 | } 149 | 150 | p { 151 | margin-top: 0; 152 | margin-bottom: 1rem; 153 | } 154 | 155 | abbr[title], 156 | abbr[data-bs-original-title] { 157 | -webkit-text-decoration: underline dotted; 158 | text-decoration: underline dotted; 159 | cursor: help; 160 | -webkit-text-decoration-skip-ink: none; 161 | text-decoration-skip-ink: none; 162 | } 163 | 164 | address { 165 | margin-bottom: 1rem; 166 | font-style: normal; 167 | line-height: inherit; 168 | } 169 | 170 | ol, 171 | ul { 172 | padding-right: 2rem; 173 | } 174 | 175 | ol, 176 | ul, 177 | dl { 178 | margin-top: 0; 179 | margin-bottom: 1rem; 180 | } 181 | 182 | ol ol, 183 | ul ul, 184 | ol ul, 185 | ul ol { 186 | margin-bottom: 0; 187 | } 188 | 189 | dt { 190 | font-weight: 700; 191 | } 192 | 193 | dd { 194 | margin-bottom: 0.5rem; 195 | margin-right: 0; 196 | } 197 | 198 | blockquote { 199 | margin: 0 0 1rem; 200 | } 201 | 202 | b, 203 | strong { 204 | font-weight: bolder; 205 | } 206 | 207 | small { 208 | font-size: 0.875em; 209 | } 210 | 211 | mark { 212 | padding: 0.2em; 213 | background-color: #fcf8e3; 214 | } 215 | 216 | sub, 217 | sup { 218 | position: relative; 219 | font-size: 0.75em; 220 | line-height: 0; 221 | vertical-align: baseline; 222 | } 223 | 224 | sub { 225 | bottom: -0.25em; 226 | } 227 | 228 | sup { 229 | top: -0.5em; 230 | } 231 | 232 | a { 233 | color: #0d6efd; 234 | text-decoration: underline; 235 | } 236 | a:hover { 237 | color: #0a58ca; 238 | } 239 | 240 | a:not([href]):not([class]), a:not([href]):not([class]):hover { 241 | color: inherit; 242 | text-decoration: none; 243 | } 244 | 245 | pre, 246 | code, 247 | kbd, 248 | samp { 249 | font-family: var(--bs-font-monospace); 250 | font-size: 1em; 251 | direction: ltr ; 252 | unicode-bidi: bidi-override; 253 | } 254 | 255 | pre { 256 | display: block; 257 | margin-top: 0; 258 | margin-bottom: 1rem; 259 | overflow: auto; 260 | font-size: 0.875em; 261 | } 262 | pre code { 263 | font-size: inherit; 264 | color: inherit; 265 | word-break: normal; 266 | } 267 | 268 | code { 269 | font-size: 0.875em; 270 | color: #d63384; 271 | word-wrap: break-word; 272 | } 273 | a > code { 274 | color: inherit; 275 | } 276 | 277 | kbd { 278 | padding: 0.2rem 0.4rem; 279 | font-size: 0.875em; 280 | color: #fff; 281 | background-color: #212529; 282 | border-radius: 0.2rem; 283 | } 284 | kbd kbd { 285 | padding: 0; 286 | font-size: 1em; 287 | font-weight: 700; 288 | } 289 | 290 | figure { 291 | margin: 0 0 1rem; 292 | } 293 | 294 | img, 295 | svg { 296 | vertical-align: middle; 297 | } 298 | 299 | table { 300 | caption-side: bottom; 301 | border-collapse: collapse; 302 | } 303 | 304 | caption { 305 | padding-top: 0.5rem; 306 | padding-bottom: 0.5rem; 307 | color: #6c757d; 308 | text-align: right; 309 | } 310 | 311 | th { 312 | text-align: inherit; 313 | text-align: -webkit-match-parent; 314 | } 315 | 316 | thead, 317 | tbody, 318 | tfoot, 319 | tr, 320 | td, 321 | th { 322 | border-color: inherit; 323 | border-style: solid; 324 | border-width: 0; 325 | } 326 | 327 | label { 328 | display: inline-block; 329 | } 330 | 331 | button { 332 | border-radius: 0; 333 | } 334 | 335 | button:focus:not(:focus-visible) { 336 | outline: 0; 337 | } 338 | 339 | input, 340 | button, 341 | select, 342 | optgroup, 343 | textarea { 344 | margin: 0; 345 | font-family: inherit; 346 | font-size: inherit; 347 | line-height: inherit; 348 | } 349 | 350 | button, 351 | select { 352 | text-transform: none; 353 | } 354 | 355 | [role=button] { 356 | cursor: pointer; 357 | } 358 | 359 | select { 360 | word-wrap: normal; 361 | } 362 | select:disabled { 363 | opacity: 1; 364 | } 365 | 366 | [list]::-webkit-calendar-picker-indicator { 367 | display: none; 368 | } 369 | 370 | button, 371 | [type=button], 372 | [type=reset], 373 | [type=submit] { 374 | -webkit-appearance: button; 375 | } 376 | button:not(:disabled), 377 | [type=button]:not(:disabled), 378 | [type=reset]:not(:disabled), 379 | [type=submit]:not(:disabled) { 380 | cursor: pointer; 381 | } 382 | 383 | ::-moz-focus-inner { 384 | padding: 0; 385 | border-style: none; 386 | } 387 | 388 | textarea { 389 | resize: vertical; 390 | } 391 | 392 | fieldset { 393 | min-width: 0; 394 | padding: 0; 395 | margin: 0; 396 | border: 0; 397 | } 398 | 399 | legend { 400 | float: right; 401 | width: 100%; 402 | padding: 0; 403 | margin-bottom: 0.5rem; 404 | font-size: calc(1.275rem + 0.3vw); 405 | line-height: inherit; 406 | } 407 | @media (min-width: 1200px) { 408 | legend { 409 | font-size: 1.5rem; 410 | } 411 | } 412 | legend + * { 413 | clear: right; 414 | } 415 | 416 | ::-webkit-datetime-edit-fields-wrapper, 417 | ::-webkit-datetime-edit-text, 418 | ::-webkit-datetime-edit-minute, 419 | ::-webkit-datetime-edit-hour-field, 420 | ::-webkit-datetime-edit-day-field, 421 | ::-webkit-datetime-edit-month-field, 422 | ::-webkit-datetime-edit-year-field { 423 | padding: 0; 424 | } 425 | 426 | ::-webkit-inner-spin-button { 427 | height: auto; 428 | } 429 | 430 | [type=search] { 431 | outline-offset: -2px; 432 | -webkit-appearance: textfield; 433 | } 434 | 435 | [type="tel"], 436 | [type="url"], 437 | [type="email"], 438 | [type="number"] { 439 | direction: ltr; 440 | } 441 | ::-webkit-search-decoration { 442 | -webkit-appearance: none; 443 | } 444 | 445 | ::-webkit-color-swatch-wrapper { 446 | padding: 0; 447 | } 448 | 449 | ::-webkit-file-upload-button { 450 | font: inherit; 451 | } 452 | 453 | ::file-selector-button { 454 | font: inherit; 455 | } 456 | 457 | ::-webkit-file-upload-button { 458 | font: inherit; 459 | -webkit-appearance: button; 460 | } 461 | 462 | output { 463 | display: inline-block; 464 | } 465 | 466 | iframe { 467 | border: 0; 468 | } 469 | 470 | summary { 471 | display: list-item; 472 | cursor: pointer; 473 | } 474 | 475 | progress { 476 | vertical-align: baseline; 477 | } 478 | 479 | [hidden] { 480 | display: none !important; 481 | } 482 | /*# sourceMappingURL=bootstrap-reboot.rtl.css.map */ -------------------------------------------------------------------------------- /assets/bootstrap-5.1.3-dist/css/bootstrap-reboot.rtl.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Bootstrap Reboot v5.1.3 (https://getbootstrap.com/) 3 | * Copyright 2011-2021 The Bootstrap Authors 4 | * Copyright 2011-2021 Twitter, Inc. 5 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) 6 | * Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md) 7 | */:root{--bs-blue:#0d6efd;--bs-indigo:#6610f2;--bs-purple:#6f42c1;--bs-pink:#d63384;--bs-red:#dc3545;--bs-orange:#fd7e14;--bs-yellow:#ffc107;--bs-green:#198754;--bs-teal:#20c997;--bs-cyan:#0dcaf0;--bs-white:#fff;--bs-gray:#6c757d;--bs-gray-dark:#343a40;--bs-gray-100:#f8f9fa;--bs-gray-200:#e9ecef;--bs-gray-300:#dee2e6;--bs-gray-400:#ced4da;--bs-gray-500:#adb5bd;--bs-gray-600:#6c757d;--bs-gray-700:#495057;--bs-gray-800:#343a40;--bs-gray-900:#212529;--bs-primary:#0d6efd;--bs-secondary:#6c757d;--bs-success:#198754;--bs-info:#0dcaf0;--bs-warning:#ffc107;--bs-danger:#dc3545;--bs-light:#f8f9fa;--bs-dark:#212529;--bs-primary-rgb:13,110,253;--bs-secondary-rgb:108,117,125;--bs-success-rgb:25,135,84;--bs-info-rgb:13,202,240;--bs-warning-rgb:255,193,7;--bs-danger-rgb:220,53,69;--bs-light-rgb:248,249,250;--bs-dark-rgb:33,37,41;--bs-white-rgb:255,255,255;--bs-black-rgb:0,0,0;--bs-body-color-rgb:33,37,41;--bs-body-bg-rgb:255,255,255;--bs-font-sans-serif:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--bs-font-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--bs-gradient:linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));--bs-body-font-family:var(--bs-font-sans-serif);--bs-body-font-size:1rem;--bs-body-font-weight:400;--bs-body-line-height:1.5;--bs-body-color:#212529;--bs-body-bg:#fff}*,::after,::before{box-sizing:border-box}@media (prefers-reduced-motion:no-preference){:root{scroll-behavior:smooth}}body{margin:0;font-family:var(--bs-body-font-family);font-size:var(--bs-body-font-size);font-weight:var(--bs-body-font-weight);line-height:var(--bs-body-line-height);color:var(--bs-body-color);text-align:var(--bs-body-text-align);background-color:var(--bs-body-bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}hr{margin:1rem 0;color:inherit;background-color:currentColor;border:0;opacity:.25}hr:not([size]){height:1px}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem;font-weight:500;line-height:1.2}h1{font-size:calc(1.375rem + 1.5vw)}@media (min-width:1200px){h1{font-size:2.5rem}}h2{font-size:calc(1.325rem + .9vw)}@media (min-width:1200px){h2{font-size:2rem}}h3{font-size:calc(1.3rem + .6vw)}@media (min-width:1200px){h3{font-size:1.75rem}}h4{font-size:calc(1.275rem + .3vw)}@media (min-width:1200px){h4{font-size:1.5rem}}h5{font-size:1.25rem}h6{font-size:1rem}p{margin-top:0;margin-bottom:1rem}abbr[data-bs-original-title],abbr[title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}ol,ul{padding-right:2rem}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-right:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}small{font-size:.875em}mark{padding:.2em;background-color:#fcf8e3}sub,sup{position:relative;font-size:.75em;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#0d6efd;text-decoration:underline}a:hover{color:#0a58ca}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none}code,kbd,pre,samp{font-family:var(--bs-font-monospace);font-size:1em;direction:ltr;unicode-bidi:bidi-override}pre{display:block;margin-top:0;margin-bottom:1rem;overflow:auto;font-size:.875em}pre code{font-size:inherit;color:inherit;word-break:normal}code{font-size:.875em;color:#d63384;word-wrap:break-word}a>code{color:inherit}kbd{padding:.2rem .4rem;font-size:.875em;color:#fff;background-color:#212529;border-radius:.2rem}kbd kbd{padding:0;font-size:1em;font-weight:700}figure{margin:0 0 1rem}img,svg{vertical-align:middle}table{caption-side:bottom;border-collapse:collapse}caption{padding-top:.5rem;padding-bottom:.5rem;color:#6c757d;text-align:right}th{text-align:inherit;text-align:-webkit-match-parent}tbody,td,tfoot,th,thead,tr{border-color:inherit;border-style:solid;border-width:0}label{display:inline-block}button{border-radius:0}button:focus:not(:focus-visible){outline:0}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,select{text-transform:none}[role=button]{cursor:pointer}select{word-wrap:normal}select:disabled{opacity:1}[list]::-webkit-calendar-picker-indicator{display:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}::-moz-focus-inner{padding:0;border-style:none}textarea{resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{float:right;width:100%;padding:0;margin-bottom:.5rem;font-size:calc(1.275rem + .3vw);line-height:inherit}@media (min-width:1200px){legend{font-size:1.5rem}}legend+*{clear:right}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-fields-wrapper,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-text,::-webkit-datetime-edit-year-field{padding:0}::-webkit-inner-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:textfield}[type=email],[type=number],[type=tel],[type=url]{direction:ltr}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::-webkit-file-upload-button{font:inherit}::file-selector-button{font:inherit}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}iframe{border:0}summary{display:list-item;cursor:pointer}progress{vertical-align:baseline}[hidden]{display:none!important} 8 | /*# sourceMappingURL=bootstrap-reboot.rtl.min.css.map */ -------------------------------------------------------------------------------- /assets/css/style.css: -------------------------------------------------------------------------------- 1 | *{ 2 | margin: 0; 3 | padding: 0; 4 | box-sizing: border-box; 5 | font-family: Verdana, Geneva, Tahoma, sans-serif; 6 | 7 | } 8 | 9 | .home_page{ 10 | background-image: url(../image/hero-bg.png); 11 | background-position: center; 12 | background-repeat: no-repeat; 13 | background-size: cover; 14 | height: 100%; 15 | } 16 | 17 | .intro_text{ 18 | color:#ff2d75; 19 | } 20 | 21 | .intro_text h3{ 22 | color:#5995fd !important; 23 | } 24 | 25 | @media (max-width:500px) { 26 | h1,h3,h2{ 27 | font-size:16px; 28 | } 29 | } 30 | .line_through{ 31 | text-decoration: line-through; 32 | } 33 | 34 | .hidden{ 35 | display: none !important; 36 | } 37 | 38 | .form-control:focus { 39 | border-color: #ff00cc !important; 40 | box-shadow: 0 0 0 0.2rem rgba(253, 101, 90, 0.25) !important; 41 | } -------------------------------------------------------------------------------- /assets/image/account.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TalelMejri/PHP_sem1_TP/9fb95a9821c07381c5708b9543f3e8b3f92446b7/assets/image/account.png -------------------------------------------------------------------------------- /assets/image/edit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TalelMejri/PHP_sem1_TP/9fb95a9821c07381c5708b9543f3e8b3f92446b7/assets/image/edit.png -------------------------------------------------------------------------------- /assets/image/hero-bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TalelMejri/PHP_sem1_TP/9fb95a9821c07381c5708b9543f3e8b3f92446b7/assets/image/hero-bg.png -------------------------------------------------------------------------------- /assets/image/hero-img.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TalelMejri/PHP_sem1_TP/9fb95a9821c07381c5708b9543f3e8b3f92446b7/assets/image/hero-img.png -------------------------------------------------------------------------------- /assets/image/testi-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TalelMejri/PHP_sem1_TP/9fb95a9821c07381c5708b9543f3e8b3f92446b7/assets/image/testi-1.jpg -------------------------------------------------------------------------------- /assets/image/todo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TalelMejri/PHP_sem1_TP/9fb95a9821c07381c5708b9543f3e8b3f92446b7/assets/image/todo.png -------------------------------------------------------------------------------- /assets/script/index.min.js: -------------------------------------------------------------------------------- 1 | !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e=e||self).ConfettiGenerator=t()}(this,function(){"use strict";return function(e){var a={target:"confetti-holder",max:80,size:1,animate:!0,respawn:!0,props:["circle","square","triangle","line"],colors:[[165,104,246],[230,61,135],[0,199,228],[253,214,126]],clock:25,interval:null,rotate:!1,start_from_edge:!1,width:window.innerWidth,height:window.innerHeight};if(e&&(e.target&&(a.target=e.target),e.max&&(a.max=e.max),e.size&&(a.size=e.size),null!=e.animate&&(a.animate=e.animate),null!=e.respawn&&(a.respawn=e.respawn),e.props&&(a.props=e.props),e.colors&&(a.colors=e.colors),e.clock&&(a.clock=e.clock),null!=e.start_from_edge&&(a.start_from_edge=e.start_from_edge),e.width&&(a.width=e.width),e.height&&(a.height=e.height),null!=e.rotate&&(a.rotate=e.rotate)),"object"!=typeof a.target&&"string"!=typeof a.target)throw new TypeError("The target parameter should be a node or string");if("object"==typeof a.target&&(null===a.target||!a.target instanceof HTMLCanvasElement)||"string"==typeof a.target&&(null===document.getElementById(a.target)||!document.getElementById(a.target)instanceof HTMLCanvasElement))throw new ReferenceError("The target element does not exist or is not a canvas element");var t="object"==typeof a.target?a.target:document.getElementById(a.target),o=t.getContext("2d"),r=[];function n(e,t){e=e||1;var r=Math.random()*e;return t?Math.floor(r):r}var i=a.props.reduce(function(e,t){return e+(t.weight||1)},0);function s(){var e=a.props[function(){for(var e=Math.random()*i,t=0;t0&&void 0!==arguments[0]&&arguments[0];if(e&&(k=!0),k)return w=(0,y.default)(w,x),(0,b.default)(w,x.once),w},O=function(){w=(0,h.default)(),j()},M=function(){w.forEach(function(e,t){e.node.removeAttribute("data-aos"),e.node.removeAttribute("data-aos-easing"),e.node.removeAttribute("data-aos-duration"),e.node.removeAttribute("data-aos-delay")})},S=function(e){return e===!0||"mobile"===e&&p.default.mobile()||"phone"===e&&p.default.phone()||"tablet"===e&&p.default.tablet()||"function"==typeof e&&e()===!0},_=function(e){x=i(x,e),w=(0,h.default)();var t=document.all&&!window.atob;return S(x.disable)||t?M():(x.disableMutationObserver||d.default.isSupported()||(console.info('\n aos: MutationObserver is not supported on this browser,\n code mutations observing has been disabled.\n You may have to call "refreshHard()" by yourself.\n '),x.disableMutationObserver=!0),document.querySelector("body").setAttribute("data-aos-easing",x.easing),document.querySelector("body").setAttribute("data-aos-duration",x.duration),document.querySelector("body").setAttribute("data-aos-delay",x.delay),"DOMContentLoaded"===x.startEvent&&["complete","interactive"].indexOf(document.readyState)>-1?j(!0):"load"===x.startEvent?window.addEventListener(x.startEvent,function(){j(!0)}):document.addEventListener(x.startEvent,function(){j(!0)}),window.addEventListener("resize",(0,s.default)(j,x.debounceDelay,!0)),window.addEventListener("orientationchange",(0,s.default)(j,x.debounceDelay,!0)),window.addEventListener("scroll",(0,u.default)(function(){(0,b.default)(w,x.once)},x.throttleDelay)),x.disableMutationObserver||d.default.ready("[data-aos]",O),w)};e.exports={init:_,refresh:j,refreshHard:O}},function(e,t){},,,,,function(e,t){(function(t){"use strict";function n(e,t,n){function o(t){var n=b,o=v;return b=v=void 0,k=t,g=e.apply(o,n)}function r(e){return k=e,h=setTimeout(f,t),M?o(e):g}function a(e){var n=e-w,o=e-k,i=t-n;return S?j(i,y-o):i}function c(e){var n=e-w,o=e-k;return void 0===w||n>=t||n<0||S&&o>=y}function f(){var e=O();return c(e)?d(e):void(h=setTimeout(f,a(e)))}function d(e){return h=void 0,_&&b?o(e):(b=v=void 0,g)}function l(){void 0!==h&&clearTimeout(h),k=0,b=w=v=h=void 0}function p(){return void 0===h?g:d(O())}function m(){var e=O(),n=c(e);if(b=arguments,v=this,w=e,n){if(void 0===h)return r(w);if(S)return h=setTimeout(f,t),o(w)}return void 0===h&&(h=setTimeout(f,t)),g}var b,v,y,g,h,w,k=0,M=!1,S=!1,_=!0;if("function"!=typeof e)throw new TypeError(s);return t=u(t)||0,i(n)&&(M=!!n.leading,S="maxWait"in n,y=S?x(u(n.maxWait)||0,t):y,_="trailing"in n?!!n.trailing:_),m.cancel=l,m.flush=p,m}function o(e,t,o){var r=!0,a=!0;if("function"!=typeof e)throw new TypeError(s);return i(o)&&(r="leading"in o?!!o.leading:r,a="trailing"in o?!!o.trailing:a),n(e,t,{leading:r,maxWait:t,trailing:a})}function i(e){var t="undefined"==typeof e?"undefined":c(e);return!!e&&("object"==t||"function"==t)}function r(e){return!!e&&"object"==("undefined"==typeof e?"undefined":c(e))}function a(e){return"symbol"==("undefined"==typeof e?"undefined":c(e))||r(e)&&k.call(e)==d}function u(e){if("number"==typeof e)return e;if(a(e))return f;if(i(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=i(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=e.replace(l,"");var n=m.test(e);return n||b.test(e)?v(e.slice(2),n?2:8):p.test(e)?f:+e}var c="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},s="Expected a function",f=NaN,d="[object Symbol]",l=/^\s+|\s+$/g,p=/^[-+]0x[0-9a-f]+$/i,m=/^0b[01]+$/i,b=/^0o[0-7]+$/i,v=parseInt,y="object"==("undefined"==typeof t?"undefined":c(t))&&t&&t.Object===Object&&t,g="object"==("undefined"==typeof self?"undefined":c(self))&&self&&self.Object===Object&&self,h=y||g||Function("return this")(),w=Object.prototype,k=w.toString,x=Math.max,j=Math.min,O=function(){return h.Date.now()};e.exports=o}).call(t,function(){return this}())},function(e,t){(function(t){"use strict";function n(e,t,n){function i(t){var n=b,o=v;return b=v=void 0,O=t,g=e.apply(o,n)}function r(e){return O=e,h=setTimeout(f,t),M?i(e):g}function u(e){var n=e-w,o=e-O,i=t-n;return S?x(i,y-o):i}function s(e){var n=e-w,o=e-O;return void 0===w||n>=t||n<0||S&&o>=y}function f(){var e=j();return s(e)?d(e):void(h=setTimeout(f,u(e)))}function d(e){return h=void 0,_&&b?i(e):(b=v=void 0,g)}function l(){void 0!==h&&clearTimeout(h),O=0,b=w=v=h=void 0}function p(){return void 0===h?g:d(j())}function m(){var e=j(),n=s(e);if(b=arguments,v=this,w=e,n){if(void 0===h)return r(w);if(S)return h=setTimeout(f,t),i(w)}return void 0===h&&(h=setTimeout(f,t)),g}var b,v,y,g,h,w,O=0,M=!1,S=!1,_=!0;if("function"!=typeof e)throw new TypeError(c);return t=a(t)||0,o(n)&&(M=!!n.leading,S="maxWait"in n,y=S?k(a(n.maxWait)||0,t):y,_="trailing"in n?!!n.trailing:_),m.cancel=l,m.flush=p,m}function o(e){var t="undefined"==typeof e?"undefined":u(e);return!!e&&("object"==t||"function"==t)}function i(e){return!!e&&"object"==("undefined"==typeof e?"undefined":u(e))}function r(e){return"symbol"==("undefined"==typeof e?"undefined":u(e))||i(e)&&w.call(e)==f}function a(e){if("number"==typeof e)return e;if(r(e))return s;if(o(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=o(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=e.replace(d,"");var n=p.test(e);return n||m.test(e)?b(e.slice(2),n?2:8):l.test(e)?s:+e}var u="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},c="Expected a function",s=NaN,f="[object Symbol]",d=/^\s+|\s+$/g,l=/^[-+]0x[0-9a-f]+$/i,p=/^0b[01]+$/i,m=/^0o[0-7]+$/i,b=parseInt,v="object"==("undefined"==typeof t?"undefined":u(t))&&t&&t.Object===Object&&t,y="object"==("undefined"==typeof self?"undefined":u(self))&&self&&self.Object===Object&&self,g=v||y||Function("return this")(),h=Object.prototype,w=h.toString,k=Math.max,x=Math.min,j=function(){return g.Date.now()};e.exports=n}).call(t,function(){return this}())},function(e,t){"use strict";function n(e){var t=void 0,o=void 0,i=void 0;for(t=0;te.position?e.node.classList.add("aos-animate"):"undefined"!=typeof o&&("false"===o||!n&&"true"!==o)&&e.node.classList.remove("aos-animate")},o=function(e,t){var o=window.pageYOffset,i=window.innerHeight;e.forEach(function(e,r){n(e,i+o,t)})};t.default=o},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var i=n(12),r=o(i),a=function(e,t){return e.forEach(function(e,n){e.node.classList.add("aos-init"),e.position=(0,r.default)(e.node,t.offset)}),e};t.default=a},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var i=n(13),r=o(i),a=function(e,t){var n=0,o=0,i=window.innerHeight,a={offset:e.getAttribute("data-aos-offset"),anchor:e.getAttribute("data-aos-anchor"),anchorPlacement:e.getAttribute("data-aos-anchor-placement")};switch(a.offset&&!isNaN(a.offset)&&(o=parseInt(a.offset)),a.anchor&&document.querySelectorAll(a.anchor)&&(e=document.querySelectorAll(a.anchor)[0]),n=(0,r.default)(e).top,a.anchorPlacement){case"top-bottom":break;case"center-bottom":n+=e.offsetHeight/2;break;case"bottom-bottom":n+=e.offsetHeight;break;case"top-center":n+=i/2;break;case"bottom-center":n+=i/2+e.offsetHeight;break;case"center-center":n+=i/2+e.offsetHeight/2;break;case"top-top":n+=i;break;case"bottom-top":n+=e.offsetHeight+i;break;case"center-top":n+=e.offsetHeight/2+i}return a.anchorPlacement||a.offset||isNaN(t)||(o=t),n+o};t.default=a},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=function(e){for(var t=0,n=0;e&&!isNaN(e.offsetLeft)&&!isNaN(e.offsetTop);)t+=e.offsetLeft-("BODY"!=e.tagName?e.scrollLeft:0),n+=e.offsetTop-("BODY"!=e.tagName?e.scrollTop:0),e=e.offsetParent;return{top:n,left:t}};t.default=n},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=function(e){return e=e||document.querySelectorAll("[data-aos]"),Array.prototype.map.call(e,function(e){return{node:e}})};t.default=n}])}); -------------------------------------------------------------------------------- /assets/vendor/bootstrap-icons/fonts/bootstrap-icons.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TalelMejri/PHP_sem1_TP/9fb95a9821c07381c5708b9543f3e8b3f92446b7/assets/vendor/bootstrap-icons/fonts/bootstrap-icons.woff -------------------------------------------------------------------------------- /assets/vendor/bootstrap-icons/fonts/bootstrap-icons.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TalelMejri/PHP_sem1_TP/9fb95a9821c07381c5708b9543f3e8b3f92446b7/assets/vendor/bootstrap-icons/fonts/bootstrap-icons.woff2 -------------------------------------------------------------------------------- /assets/vendor/bootstrap/css/bootstrap-reboot.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Bootstrap Reboot v5.2.2 (https://getbootstrap.com/) 3 | * Copyright 2011-2022 The Bootstrap Authors 4 | * Copyright 2011-2022 Twitter, Inc. 5 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) 6 | */ 7 | :root { 8 | --bs-blue: #0d6efd; 9 | --bs-indigo: #6610f2; 10 | --bs-purple: #6f42c1; 11 | --bs-pink: #d63384; 12 | --bs-red: #dc3545; 13 | --bs-orange: #fd7e14; 14 | --bs-yellow: #ffc107; 15 | --bs-green: #198754; 16 | --bs-teal: #20c997; 17 | --bs-cyan: #0dcaf0; 18 | --bs-black: #000; 19 | --bs-white: #fff; 20 | --bs-gray: #6c757d; 21 | --bs-gray-dark: #343a40; 22 | --bs-gray-100: #f8f9fa; 23 | --bs-gray-200: #e9ecef; 24 | --bs-gray-300: #dee2e6; 25 | --bs-gray-400: #ced4da; 26 | --bs-gray-500: #adb5bd; 27 | --bs-gray-600: #6c757d; 28 | --bs-gray-700: #495057; 29 | --bs-gray-800: #343a40; 30 | --bs-gray-900: #212529; 31 | --bs-primary: #0d6efd; 32 | --bs-secondary: #6c757d; 33 | --bs-success: #198754; 34 | --bs-info: #0dcaf0; 35 | --bs-warning: #ffc107; 36 | --bs-danger: #dc3545; 37 | --bs-light: #f8f9fa; 38 | --bs-dark: #212529; 39 | --bs-primary-rgb: 13, 110, 253; 40 | --bs-secondary-rgb: 108, 117, 125; 41 | --bs-success-rgb: 25, 135, 84; 42 | --bs-info-rgb: 13, 202, 240; 43 | --bs-warning-rgb: 255, 193, 7; 44 | --bs-danger-rgb: 220, 53, 69; 45 | --bs-light-rgb: 248, 249, 250; 46 | --bs-dark-rgb: 33, 37, 41; 47 | --bs-white-rgb: 255, 255, 255; 48 | --bs-black-rgb: 0, 0, 0; 49 | --bs-body-color-rgb: 33, 37, 41; 50 | --bs-body-bg-rgb: 255, 255, 255; 51 | --bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; 52 | --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; 53 | --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0)); 54 | --bs-body-font-family: var(--bs-font-sans-serif); 55 | --bs-body-font-size: 1rem; 56 | --bs-body-font-weight: 400; 57 | --bs-body-line-height: 1.5; 58 | --bs-body-color: #212529; 59 | --bs-body-bg: #fff; 60 | --bs-border-width: 1px; 61 | --bs-border-style: solid; 62 | --bs-border-color: #dee2e6; 63 | --bs-border-color-translucent: rgba(0, 0, 0, 0.175); 64 | --bs-border-radius: 0.375rem; 65 | --bs-border-radius-sm: 0.25rem; 66 | --bs-border-radius-lg: 0.5rem; 67 | --bs-border-radius-xl: 1rem; 68 | --bs-border-radius-2xl: 2rem; 69 | --bs-border-radius-pill: 50rem; 70 | --bs-link-color: #0d6efd; 71 | --bs-link-hover-color: #0a58ca; 72 | --bs-code-color: #d63384; 73 | --bs-highlight-bg: #fff3cd; 74 | } 75 | 76 | *, 77 | *::before, 78 | *::after { 79 | box-sizing: border-box; 80 | } 81 | 82 | @media (prefers-reduced-motion: no-preference) { 83 | :root { 84 | scroll-behavior: smooth; 85 | } 86 | } 87 | 88 | body { 89 | margin: 0; 90 | font-family: var(--bs-body-font-family); 91 | font-size: var(--bs-body-font-size); 92 | font-weight: var(--bs-body-font-weight); 93 | line-height: var(--bs-body-line-height); 94 | color: var(--bs-body-color); 95 | text-align: var(--bs-body-text-align); 96 | background-color: var(--bs-body-bg); 97 | -webkit-text-size-adjust: 100%; 98 | -webkit-tap-highlight-color: rgba(0, 0, 0, 0); 99 | } 100 | 101 | hr { 102 | margin: 1rem 0; 103 | color: inherit; 104 | border: 0; 105 | border-top: 1px solid; 106 | opacity: 0.25; 107 | } 108 | 109 | h6, h5, h4, h3, h2, h1 { 110 | margin-top: 0; 111 | margin-bottom: 0.5rem; 112 | font-weight: 500; 113 | line-height: 1.2; 114 | } 115 | 116 | h1 { 117 | font-size: calc(1.375rem + 1.5vw); 118 | } 119 | @media (min-width: 1200px) { 120 | h1 { 121 | font-size: 2.5rem; 122 | } 123 | } 124 | 125 | h2 { 126 | font-size: calc(1.325rem + 0.9vw); 127 | } 128 | @media (min-width: 1200px) { 129 | h2 { 130 | font-size: 2rem; 131 | } 132 | } 133 | 134 | h3 { 135 | font-size: calc(1.3rem + 0.6vw); 136 | } 137 | @media (min-width: 1200px) { 138 | h3 { 139 | font-size: 1.75rem; 140 | } 141 | } 142 | 143 | h4 { 144 | font-size: calc(1.275rem + 0.3vw); 145 | } 146 | @media (min-width: 1200px) { 147 | h4 { 148 | font-size: 1.5rem; 149 | } 150 | } 151 | 152 | h5 { 153 | font-size: 1.25rem; 154 | } 155 | 156 | h6 { 157 | font-size: 1rem; 158 | } 159 | 160 | p { 161 | margin-top: 0; 162 | margin-bottom: 1rem; 163 | } 164 | 165 | abbr[title] { 166 | -webkit-text-decoration: underline dotted; 167 | text-decoration: underline dotted; 168 | cursor: help; 169 | -webkit-text-decoration-skip-ink: none; 170 | text-decoration-skip-ink: none; 171 | } 172 | 173 | address { 174 | margin-bottom: 1rem; 175 | font-style: normal; 176 | line-height: inherit; 177 | } 178 | 179 | ol, 180 | ul { 181 | padding-left: 2rem; 182 | } 183 | 184 | ol, 185 | ul, 186 | dl { 187 | margin-top: 0; 188 | margin-bottom: 1rem; 189 | } 190 | 191 | ol ol, 192 | ul ul, 193 | ol ul, 194 | ul ol { 195 | margin-bottom: 0; 196 | } 197 | 198 | dt { 199 | font-weight: 700; 200 | } 201 | 202 | dd { 203 | margin-bottom: 0.5rem; 204 | margin-left: 0; 205 | } 206 | 207 | blockquote { 208 | margin: 0 0 1rem; 209 | } 210 | 211 | b, 212 | strong { 213 | font-weight: bolder; 214 | } 215 | 216 | small { 217 | font-size: 0.875em; 218 | } 219 | 220 | mark { 221 | padding: 0.1875em; 222 | background-color: var(--bs-highlight-bg); 223 | } 224 | 225 | sub, 226 | sup { 227 | position: relative; 228 | font-size: 0.75em; 229 | line-height: 0; 230 | vertical-align: baseline; 231 | } 232 | 233 | sub { 234 | bottom: -0.25em; 235 | } 236 | 237 | sup { 238 | top: -0.5em; 239 | } 240 | 241 | a { 242 | color: var(--bs-link-color); 243 | text-decoration: underline; 244 | } 245 | a:hover { 246 | color: var(--bs-link-hover-color); 247 | } 248 | 249 | a:not([href]):not([class]), a:not([href]):not([class]):hover { 250 | color: inherit; 251 | text-decoration: none; 252 | } 253 | 254 | pre, 255 | code, 256 | kbd, 257 | samp { 258 | font-family: var(--bs-font-monospace); 259 | font-size: 1em; 260 | } 261 | 262 | pre { 263 | display: block; 264 | margin-top: 0; 265 | margin-bottom: 1rem; 266 | overflow: auto; 267 | font-size: 0.875em; 268 | } 269 | pre code { 270 | font-size: inherit; 271 | color: inherit; 272 | word-break: normal; 273 | } 274 | 275 | code { 276 | font-size: 0.875em; 277 | color: var(--bs-code-color); 278 | word-wrap: break-word; 279 | } 280 | a > code { 281 | color: inherit; 282 | } 283 | 284 | kbd { 285 | padding: 0.1875rem 0.375rem; 286 | font-size: 0.875em; 287 | color: var(--bs-body-bg); 288 | background-color: var(--bs-body-color); 289 | border-radius: 0.25rem; 290 | } 291 | kbd kbd { 292 | padding: 0; 293 | font-size: 1em; 294 | } 295 | 296 | figure { 297 | margin: 0 0 1rem; 298 | } 299 | 300 | img, 301 | svg { 302 | vertical-align: middle; 303 | } 304 | 305 | table { 306 | caption-side: bottom; 307 | border-collapse: collapse; 308 | } 309 | 310 | caption { 311 | padding-top: 0.5rem; 312 | padding-bottom: 0.5rem; 313 | color: #6c757d; 314 | text-align: left; 315 | } 316 | 317 | th { 318 | text-align: inherit; 319 | text-align: -webkit-match-parent; 320 | } 321 | 322 | thead, 323 | tbody, 324 | tfoot, 325 | tr, 326 | td, 327 | th { 328 | border-color: inherit; 329 | border-style: solid; 330 | border-width: 0; 331 | } 332 | 333 | label { 334 | display: inline-block; 335 | } 336 | 337 | button { 338 | border-radius: 0; 339 | } 340 | 341 | button:focus:not(:focus-visible) { 342 | outline: 0; 343 | } 344 | 345 | input, 346 | button, 347 | select, 348 | optgroup, 349 | textarea { 350 | margin: 0; 351 | font-family: inherit; 352 | font-size: inherit; 353 | line-height: inherit; 354 | } 355 | 356 | button, 357 | select { 358 | text-transform: none; 359 | } 360 | 361 | [role=button] { 362 | cursor: pointer; 363 | } 364 | 365 | select { 366 | word-wrap: normal; 367 | } 368 | select:disabled { 369 | opacity: 1; 370 | } 371 | 372 | [list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator { 373 | display: none !important; 374 | } 375 | 376 | button, 377 | [type=button], 378 | [type=reset], 379 | [type=submit] { 380 | -webkit-appearance: button; 381 | } 382 | button:not(:disabled), 383 | [type=button]:not(:disabled), 384 | [type=reset]:not(:disabled), 385 | [type=submit]:not(:disabled) { 386 | cursor: pointer; 387 | } 388 | 389 | ::-moz-focus-inner { 390 | padding: 0; 391 | border-style: none; 392 | } 393 | 394 | textarea { 395 | resize: vertical; 396 | } 397 | 398 | fieldset { 399 | min-width: 0; 400 | padding: 0; 401 | margin: 0; 402 | border: 0; 403 | } 404 | 405 | legend { 406 | float: left; 407 | width: 100%; 408 | padding: 0; 409 | margin-bottom: 0.5rem; 410 | font-size: calc(1.275rem + 0.3vw); 411 | line-height: inherit; 412 | } 413 | @media (min-width: 1200px) { 414 | legend { 415 | font-size: 1.5rem; 416 | } 417 | } 418 | legend + * { 419 | clear: left; 420 | } 421 | 422 | ::-webkit-datetime-edit-fields-wrapper, 423 | ::-webkit-datetime-edit-text, 424 | ::-webkit-datetime-edit-minute, 425 | ::-webkit-datetime-edit-hour-field, 426 | ::-webkit-datetime-edit-day-field, 427 | ::-webkit-datetime-edit-month-field, 428 | ::-webkit-datetime-edit-year-field { 429 | padding: 0; 430 | } 431 | 432 | ::-webkit-inner-spin-button { 433 | height: auto; 434 | } 435 | 436 | [type=search] { 437 | outline-offset: -2px; 438 | -webkit-appearance: textfield; 439 | } 440 | 441 | /* rtl:raw: 442 | [type="tel"], 443 | [type="url"], 444 | [type="email"], 445 | [type="number"] { 446 | direction: ltr; 447 | } 448 | */ 449 | ::-webkit-search-decoration { 450 | -webkit-appearance: none; 451 | } 452 | 453 | ::-webkit-color-swatch-wrapper { 454 | padding: 0; 455 | } 456 | 457 | ::-webkit-file-upload-button { 458 | font: inherit; 459 | -webkit-appearance: button; 460 | } 461 | 462 | ::file-selector-button { 463 | font: inherit; 464 | -webkit-appearance: button; 465 | } 466 | 467 | output { 468 | display: inline-block; 469 | } 470 | 471 | iframe { 472 | border: 0; 473 | } 474 | 475 | summary { 476 | display: list-item; 477 | cursor: pointer; 478 | } 479 | 480 | progress { 481 | vertical-align: baseline; 482 | } 483 | 484 | [hidden] { 485 | display: none !important; 486 | } 487 | 488 | /*# sourceMappingURL=bootstrap-reboot.css.map */ -------------------------------------------------------------------------------- /assets/vendor/bootstrap/css/bootstrap-reboot.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Bootstrap Reboot v5.2.2 (https://getbootstrap.com/) 3 | * Copyright 2011-2022 The Bootstrap Authors 4 | * Copyright 2011-2022 Twitter, Inc. 5 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) 6 | */:root{--bs-blue:#0d6efd;--bs-indigo:#6610f2;--bs-purple:#6f42c1;--bs-pink:#d63384;--bs-red:#dc3545;--bs-orange:#fd7e14;--bs-yellow:#ffc107;--bs-green:#198754;--bs-teal:#20c997;--bs-cyan:#0dcaf0;--bs-black:#000;--bs-white:#fff;--bs-gray:#6c757d;--bs-gray-dark:#343a40;--bs-gray-100:#f8f9fa;--bs-gray-200:#e9ecef;--bs-gray-300:#dee2e6;--bs-gray-400:#ced4da;--bs-gray-500:#adb5bd;--bs-gray-600:#6c757d;--bs-gray-700:#495057;--bs-gray-800:#343a40;--bs-gray-900:#212529;--bs-primary:#0d6efd;--bs-secondary:#6c757d;--bs-success:#198754;--bs-info:#0dcaf0;--bs-warning:#ffc107;--bs-danger:#dc3545;--bs-light:#f8f9fa;--bs-dark:#212529;--bs-primary-rgb:13,110,253;--bs-secondary-rgb:108,117,125;--bs-success-rgb:25,135,84;--bs-info-rgb:13,202,240;--bs-warning-rgb:255,193,7;--bs-danger-rgb:220,53,69;--bs-light-rgb:248,249,250;--bs-dark-rgb:33,37,41;--bs-white-rgb:255,255,255;--bs-black-rgb:0,0,0;--bs-body-color-rgb:33,37,41;--bs-body-bg-rgb:255,255,255;--bs-font-sans-serif:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans","Liberation Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--bs-font-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--bs-gradient:linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));--bs-body-font-family:var(--bs-font-sans-serif);--bs-body-font-size:1rem;--bs-body-font-weight:400;--bs-body-line-height:1.5;--bs-body-color:#212529;--bs-body-bg:#fff;--bs-border-width:1px;--bs-border-style:solid;--bs-border-color:#dee2e6;--bs-border-color-translucent:rgba(0, 0, 0, 0.175);--bs-border-radius:0.375rem;--bs-border-radius-sm:0.25rem;--bs-border-radius-lg:0.5rem;--bs-border-radius-xl:1rem;--bs-border-radius-2xl:2rem;--bs-border-radius-pill:50rem;--bs-link-color:#0d6efd;--bs-link-hover-color:#0a58ca;--bs-code-color:#d63384;--bs-highlight-bg:#fff3cd}*,::after,::before{box-sizing:border-box}@media (prefers-reduced-motion:no-preference){:root{scroll-behavior:smooth}}body{margin:0;font-family:var(--bs-body-font-family);font-size:var(--bs-body-font-size);font-weight:var(--bs-body-font-weight);line-height:var(--bs-body-line-height);color:var(--bs-body-color);text-align:var(--bs-body-text-align);background-color:var(--bs-body-bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}hr{margin:1rem 0;color:inherit;border:0;border-top:1px solid;opacity:.25}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem;font-weight:500;line-height:1.2}h1{font-size:calc(1.375rem + 1.5vw)}@media (min-width:1200px){h1{font-size:2.5rem}}h2{font-size:calc(1.325rem + .9vw)}@media (min-width:1200px){h2{font-size:2rem}}h3{font-size:calc(1.3rem + .6vw)}@media (min-width:1200px){h3{font-size:1.75rem}}h4{font-size:calc(1.275rem + .3vw)}@media (min-width:1200px){h4{font-size:1.5rem}}h5{font-size:1.25rem}h6{font-size:1rem}p{margin-top:0;margin-bottom:1rem}abbr[title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}ol,ul{padding-left:2rem}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}small{font-size:.875em}mark{padding:.1875em;background-color:var(--bs-highlight-bg)}sub,sup{position:relative;font-size:.75em;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:var(--bs-link-color);text-decoration:underline}a:hover{color:var(--bs-link-hover-color)}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none}code,kbd,pre,samp{font-family:var(--bs-font-monospace);font-size:1em}pre{display:block;margin-top:0;margin-bottom:1rem;overflow:auto;font-size:.875em}pre code{font-size:inherit;color:inherit;word-break:normal}code{font-size:.875em;color:var(--bs-code-color);word-wrap:break-word}a>code{color:inherit}kbd{padding:.1875rem .375rem;font-size:.875em;color:var(--bs-body-bg);background-color:var(--bs-body-color);border-radius:.25rem}kbd kbd{padding:0;font-size:1em}figure{margin:0 0 1rem}img,svg{vertical-align:middle}table{caption-side:bottom;border-collapse:collapse}caption{padding-top:.5rem;padding-bottom:.5rem;color:#6c757d;text-align:left}th{text-align:inherit;text-align:-webkit-match-parent}tbody,td,tfoot,th,thead,tr{border-color:inherit;border-style:solid;border-width:0}label{display:inline-block}button{border-radius:0}button:focus:not(:focus-visible){outline:0}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,select{text-transform:none}[role=button]{cursor:pointer}select{word-wrap:normal}select:disabled{opacity:1}[list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator{display:none!important}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}::-moz-focus-inner{padding:0;border-style:none}textarea{resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{float:left;width:100%;padding:0;margin-bottom:.5rem;font-size:calc(1.275rem + .3vw);line-height:inherit}@media (min-width:1200px){legend{font-size:1.5rem}}legend+*{clear:left}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-fields-wrapper,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-text,::-webkit-datetime-edit-year-field{padding:0}::-webkit-inner-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:textfield}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}::file-selector-button{font:inherit;-webkit-appearance:button}output{display:inline-block}iframe{border:0}summary{display:list-item;cursor:pointer}progress{vertical-align:baseline}[hidden]{display:none!important} 7 | /*# sourceMappingURL=bootstrap-reboot.min.css.map */ -------------------------------------------------------------------------------- /assets/vendor/bootstrap/css/bootstrap-reboot.rtl.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Bootstrap Reboot v5.2.2 (https://getbootstrap.com/) 3 | * Copyright 2011-2022 The Bootstrap Authors 4 | * Copyright 2011-2022 Twitter, Inc. 5 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) 6 | */ 7 | :root { 8 | --bs-blue: #0d6efd; 9 | --bs-indigo: #6610f2; 10 | --bs-purple: #6f42c1; 11 | --bs-pink: #d63384; 12 | --bs-red: #dc3545; 13 | --bs-orange: #fd7e14; 14 | --bs-yellow: #ffc107; 15 | --bs-green: #198754; 16 | --bs-teal: #20c997; 17 | --bs-cyan: #0dcaf0; 18 | --bs-black: #000; 19 | --bs-white: #fff; 20 | --bs-gray: #6c757d; 21 | --bs-gray-dark: #343a40; 22 | --bs-gray-100: #f8f9fa; 23 | --bs-gray-200: #e9ecef; 24 | --bs-gray-300: #dee2e6; 25 | --bs-gray-400: #ced4da; 26 | --bs-gray-500: #adb5bd; 27 | --bs-gray-600: #6c757d; 28 | --bs-gray-700: #495057; 29 | --bs-gray-800: #343a40; 30 | --bs-gray-900: #212529; 31 | --bs-primary: #0d6efd; 32 | --bs-secondary: #6c757d; 33 | --bs-success: #198754; 34 | --bs-info: #0dcaf0; 35 | --bs-warning: #ffc107; 36 | --bs-danger: #dc3545; 37 | --bs-light: #f8f9fa; 38 | --bs-dark: #212529; 39 | --bs-primary-rgb: 13, 110, 253; 40 | --bs-secondary-rgb: 108, 117, 125; 41 | --bs-success-rgb: 25, 135, 84; 42 | --bs-info-rgb: 13, 202, 240; 43 | --bs-warning-rgb: 255, 193, 7; 44 | --bs-danger-rgb: 220, 53, 69; 45 | --bs-light-rgb: 248, 249, 250; 46 | --bs-dark-rgb: 33, 37, 41; 47 | --bs-white-rgb: 255, 255, 255; 48 | --bs-black-rgb: 0, 0, 0; 49 | --bs-body-color-rgb: 33, 37, 41; 50 | --bs-body-bg-rgb: 255, 255, 255; 51 | --bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; 52 | --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; 53 | --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0)); 54 | --bs-body-font-family: var(--bs-font-sans-serif); 55 | --bs-body-font-size: 1rem; 56 | --bs-body-font-weight: 400; 57 | --bs-body-line-height: 1.5; 58 | --bs-body-color: #212529; 59 | --bs-body-bg: #fff; 60 | --bs-border-width: 1px; 61 | --bs-border-style: solid; 62 | --bs-border-color: #dee2e6; 63 | --bs-border-color-translucent: rgba(0, 0, 0, 0.175); 64 | --bs-border-radius: 0.375rem; 65 | --bs-border-radius-sm: 0.25rem; 66 | --bs-border-radius-lg: 0.5rem; 67 | --bs-border-radius-xl: 1rem; 68 | --bs-border-radius-2xl: 2rem; 69 | --bs-border-radius-pill: 50rem; 70 | --bs-link-color: #0d6efd; 71 | --bs-link-hover-color: #0a58ca; 72 | --bs-code-color: #d63384; 73 | --bs-highlight-bg: #fff3cd; 74 | } 75 | 76 | *, 77 | *::before, 78 | *::after { 79 | box-sizing: border-box; 80 | } 81 | 82 | @media (prefers-reduced-motion: no-preference) { 83 | :root { 84 | scroll-behavior: smooth; 85 | } 86 | } 87 | 88 | body { 89 | margin: 0; 90 | font-family: var(--bs-body-font-family); 91 | font-size: var(--bs-body-font-size); 92 | font-weight: var(--bs-body-font-weight); 93 | line-height: var(--bs-body-line-height); 94 | color: var(--bs-body-color); 95 | text-align: var(--bs-body-text-align); 96 | background-color: var(--bs-body-bg); 97 | -webkit-text-size-adjust: 100%; 98 | -webkit-tap-highlight-color: rgba(0, 0, 0, 0); 99 | } 100 | 101 | hr { 102 | margin: 1rem 0; 103 | color: inherit; 104 | border: 0; 105 | border-top: 1px solid; 106 | opacity: 0.25; 107 | } 108 | 109 | h6, h5, h4, h3, h2, h1 { 110 | margin-top: 0; 111 | margin-bottom: 0.5rem; 112 | font-weight: 500; 113 | line-height: 1.2; 114 | } 115 | 116 | h1 { 117 | font-size: calc(1.375rem + 1.5vw); 118 | } 119 | @media (min-width: 1200px) { 120 | h1 { 121 | font-size: 2.5rem; 122 | } 123 | } 124 | 125 | h2 { 126 | font-size: calc(1.325rem + 0.9vw); 127 | } 128 | @media (min-width: 1200px) { 129 | h2 { 130 | font-size: 2rem; 131 | } 132 | } 133 | 134 | h3 { 135 | font-size: calc(1.3rem + 0.6vw); 136 | } 137 | @media (min-width: 1200px) { 138 | h3 { 139 | font-size: 1.75rem; 140 | } 141 | } 142 | 143 | h4 { 144 | font-size: calc(1.275rem + 0.3vw); 145 | } 146 | @media (min-width: 1200px) { 147 | h4 { 148 | font-size: 1.5rem; 149 | } 150 | } 151 | 152 | h5 { 153 | font-size: 1.25rem; 154 | } 155 | 156 | h6 { 157 | font-size: 1rem; 158 | } 159 | 160 | p { 161 | margin-top: 0; 162 | margin-bottom: 1rem; 163 | } 164 | 165 | abbr[title] { 166 | -webkit-text-decoration: underline dotted; 167 | text-decoration: underline dotted; 168 | cursor: help; 169 | -webkit-text-decoration-skip-ink: none; 170 | text-decoration-skip-ink: none; 171 | } 172 | 173 | address { 174 | margin-bottom: 1rem; 175 | font-style: normal; 176 | line-height: inherit; 177 | } 178 | 179 | ol, 180 | ul { 181 | padding-right: 2rem; 182 | } 183 | 184 | ol, 185 | ul, 186 | dl { 187 | margin-top: 0; 188 | margin-bottom: 1rem; 189 | } 190 | 191 | ol ol, 192 | ul ul, 193 | ol ul, 194 | ul ol { 195 | margin-bottom: 0; 196 | } 197 | 198 | dt { 199 | font-weight: 700; 200 | } 201 | 202 | dd { 203 | margin-bottom: 0.5rem; 204 | margin-right: 0; 205 | } 206 | 207 | blockquote { 208 | margin: 0 0 1rem; 209 | } 210 | 211 | b, 212 | strong { 213 | font-weight: bolder; 214 | } 215 | 216 | small { 217 | font-size: 0.875em; 218 | } 219 | 220 | mark { 221 | padding: 0.1875em; 222 | background-color: var(--bs-highlight-bg); 223 | } 224 | 225 | sub, 226 | sup { 227 | position: relative; 228 | font-size: 0.75em; 229 | line-height: 0; 230 | vertical-align: baseline; 231 | } 232 | 233 | sub { 234 | bottom: -0.25em; 235 | } 236 | 237 | sup { 238 | top: -0.5em; 239 | } 240 | 241 | a { 242 | color: var(--bs-link-color); 243 | text-decoration: underline; 244 | } 245 | a:hover { 246 | color: var(--bs-link-hover-color); 247 | } 248 | 249 | a:not([href]):not([class]), a:not([href]):not([class]):hover { 250 | color: inherit; 251 | text-decoration: none; 252 | } 253 | 254 | pre, 255 | code, 256 | kbd, 257 | samp { 258 | font-family: var(--bs-font-monospace); 259 | font-size: 1em; 260 | } 261 | 262 | pre { 263 | display: block; 264 | margin-top: 0; 265 | margin-bottom: 1rem; 266 | overflow: auto; 267 | font-size: 0.875em; 268 | } 269 | pre code { 270 | font-size: inherit; 271 | color: inherit; 272 | word-break: normal; 273 | } 274 | 275 | code { 276 | font-size: 0.875em; 277 | color: var(--bs-code-color); 278 | word-wrap: break-word; 279 | } 280 | a > code { 281 | color: inherit; 282 | } 283 | 284 | kbd { 285 | padding: 0.1875rem 0.375rem; 286 | font-size: 0.875em; 287 | color: var(--bs-body-bg); 288 | background-color: var(--bs-body-color); 289 | border-radius: 0.25rem; 290 | } 291 | kbd kbd { 292 | padding: 0; 293 | font-size: 1em; 294 | } 295 | 296 | figure { 297 | margin: 0 0 1rem; 298 | } 299 | 300 | img, 301 | svg { 302 | vertical-align: middle; 303 | } 304 | 305 | table { 306 | caption-side: bottom; 307 | border-collapse: collapse; 308 | } 309 | 310 | caption { 311 | padding-top: 0.5rem; 312 | padding-bottom: 0.5rem; 313 | color: #6c757d; 314 | text-align: right; 315 | } 316 | 317 | th { 318 | text-align: inherit; 319 | text-align: -webkit-match-parent; 320 | } 321 | 322 | thead, 323 | tbody, 324 | tfoot, 325 | tr, 326 | td, 327 | th { 328 | border-color: inherit; 329 | border-style: solid; 330 | border-width: 0; 331 | } 332 | 333 | label { 334 | display: inline-block; 335 | } 336 | 337 | button { 338 | border-radius: 0; 339 | } 340 | 341 | button:focus:not(:focus-visible) { 342 | outline: 0; 343 | } 344 | 345 | input, 346 | button, 347 | select, 348 | optgroup, 349 | textarea { 350 | margin: 0; 351 | font-family: inherit; 352 | font-size: inherit; 353 | line-height: inherit; 354 | } 355 | 356 | button, 357 | select { 358 | text-transform: none; 359 | } 360 | 361 | [role=button] { 362 | cursor: pointer; 363 | } 364 | 365 | select { 366 | word-wrap: normal; 367 | } 368 | select:disabled { 369 | opacity: 1; 370 | } 371 | 372 | [list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator { 373 | display: none !important; 374 | } 375 | 376 | button, 377 | [type=button], 378 | [type=reset], 379 | [type=submit] { 380 | -webkit-appearance: button; 381 | } 382 | button:not(:disabled), 383 | [type=button]:not(:disabled), 384 | [type=reset]:not(:disabled), 385 | [type=submit]:not(:disabled) { 386 | cursor: pointer; 387 | } 388 | 389 | ::-moz-focus-inner { 390 | padding: 0; 391 | border-style: none; 392 | } 393 | 394 | textarea { 395 | resize: vertical; 396 | } 397 | 398 | fieldset { 399 | min-width: 0; 400 | padding: 0; 401 | margin: 0; 402 | border: 0; 403 | } 404 | 405 | legend { 406 | float: right; 407 | width: 100%; 408 | padding: 0; 409 | margin-bottom: 0.5rem; 410 | font-size: calc(1.275rem + 0.3vw); 411 | line-height: inherit; 412 | } 413 | @media (min-width: 1200px) { 414 | legend { 415 | font-size: 1.5rem; 416 | } 417 | } 418 | legend + * { 419 | clear: right; 420 | } 421 | 422 | ::-webkit-datetime-edit-fields-wrapper, 423 | ::-webkit-datetime-edit-text, 424 | ::-webkit-datetime-edit-minute, 425 | ::-webkit-datetime-edit-hour-field, 426 | ::-webkit-datetime-edit-day-field, 427 | ::-webkit-datetime-edit-month-field, 428 | ::-webkit-datetime-edit-year-field { 429 | padding: 0; 430 | } 431 | 432 | ::-webkit-inner-spin-button { 433 | height: auto; 434 | } 435 | 436 | [type=search] { 437 | outline-offset: -2px; 438 | -webkit-appearance: textfield; 439 | } 440 | 441 | [type="tel"], 442 | [type="url"], 443 | [type="email"], 444 | [type="number"] { 445 | direction: ltr; 446 | } 447 | ::-webkit-search-decoration { 448 | -webkit-appearance: none; 449 | } 450 | 451 | ::-webkit-color-swatch-wrapper { 452 | padding: 0; 453 | } 454 | 455 | ::-webkit-file-upload-button { 456 | font: inherit; 457 | -webkit-appearance: button; 458 | } 459 | 460 | ::file-selector-button { 461 | font: inherit; 462 | -webkit-appearance: button; 463 | } 464 | 465 | output { 466 | display: inline-block; 467 | } 468 | 469 | iframe { 470 | border: 0; 471 | } 472 | 473 | summary { 474 | display: list-item; 475 | cursor: pointer; 476 | } 477 | 478 | progress { 479 | vertical-align: baseline; 480 | } 481 | 482 | [hidden] { 483 | display: none !important; 484 | } 485 | /*# sourceMappingURL=bootstrap-reboot.rtl.css.map */ -------------------------------------------------------------------------------- /assets/vendor/bootstrap/css/bootstrap-reboot.rtl.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Bootstrap Reboot v5.2.2 (https://getbootstrap.com/) 3 | * Copyright 2011-2022 The Bootstrap Authors 4 | * Copyright 2011-2022 Twitter, Inc. 5 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) 6 | */:root{--bs-blue:#0d6efd;--bs-indigo:#6610f2;--bs-purple:#6f42c1;--bs-pink:#d63384;--bs-red:#dc3545;--bs-orange:#fd7e14;--bs-yellow:#ffc107;--bs-green:#198754;--bs-teal:#20c997;--bs-cyan:#0dcaf0;--bs-black:#000;--bs-white:#fff;--bs-gray:#6c757d;--bs-gray-dark:#343a40;--bs-gray-100:#f8f9fa;--bs-gray-200:#e9ecef;--bs-gray-300:#dee2e6;--bs-gray-400:#ced4da;--bs-gray-500:#adb5bd;--bs-gray-600:#6c757d;--bs-gray-700:#495057;--bs-gray-800:#343a40;--bs-gray-900:#212529;--bs-primary:#0d6efd;--bs-secondary:#6c757d;--bs-success:#198754;--bs-info:#0dcaf0;--bs-warning:#ffc107;--bs-danger:#dc3545;--bs-light:#f8f9fa;--bs-dark:#212529;--bs-primary-rgb:13,110,253;--bs-secondary-rgb:108,117,125;--bs-success-rgb:25,135,84;--bs-info-rgb:13,202,240;--bs-warning-rgb:255,193,7;--bs-danger-rgb:220,53,69;--bs-light-rgb:248,249,250;--bs-dark-rgb:33,37,41;--bs-white-rgb:255,255,255;--bs-black-rgb:0,0,0;--bs-body-color-rgb:33,37,41;--bs-body-bg-rgb:255,255,255;--bs-font-sans-serif:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans","Liberation Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--bs-font-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--bs-gradient:linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));--bs-body-font-family:var(--bs-font-sans-serif);--bs-body-font-size:1rem;--bs-body-font-weight:400;--bs-body-line-height:1.5;--bs-body-color:#212529;--bs-body-bg:#fff;--bs-border-width:1px;--bs-border-style:solid;--bs-border-color:#dee2e6;--bs-border-color-translucent:rgba(0, 0, 0, 0.175);--bs-border-radius:0.375rem;--bs-border-radius-sm:0.25rem;--bs-border-radius-lg:0.5rem;--bs-border-radius-xl:1rem;--bs-border-radius-2xl:2rem;--bs-border-radius-pill:50rem;--bs-link-color:#0d6efd;--bs-link-hover-color:#0a58ca;--bs-code-color:#d63384;--bs-highlight-bg:#fff3cd}*,::after,::before{box-sizing:border-box}@media (prefers-reduced-motion:no-preference){:root{scroll-behavior:smooth}}body{margin:0;font-family:var(--bs-body-font-family);font-size:var(--bs-body-font-size);font-weight:var(--bs-body-font-weight);line-height:var(--bs-body-line-height);color:var(--bs-body-color);text-align:var(--bs-body-text-align);background-color:var(--bs-body-bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}hr{margin:1rem 0;color:inherit;border:0;border-top:1px solid;opacity:.25}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem;font-weight:500;line-height:1.2}h1{font-size:calc(1.375rem + 1.5vw)}@media (min-width:1200px){h1{font-size:2.5rem}}h2{font-size:calc(1.325rem + .9vw)}@media (min-width:1200px){h2{font-size:2rem}}h3{font-size:calc(1.3rem + .6vw)}@media (min-width:1200px){h3{font-size:1.75rem}}h4{font-size:calc(1.275rem + .3vw)}@media (min-width:1200px){h4{font-size:1.5rem}}h5{font-size:1.25rem}h6{font-size:1rem}p{margin-top:0;margin-bottom:1rem}abbr[title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}ol,ul{padding-right:2rem}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-right:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}small{font-size:.875em}mark{padding:.1875em;background-color:var(--bs-highlight-bg)}sub,sup{position:relative;font-size:.75em;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:var(--bs-link-color);text-decoration:underline}a:hover{color:var(--bs-link-hover-color)}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none}code,kbd,pre,samp{font-family:var(--bs-font-monospace);font-size:1em}pre{display:block;margin-top:0;margin-bottom:1rem;overflow:auto;font-size:.875em}pre code{font-size:inherit;color:inherit;word-break:normal}code{font-size:.875em;color:var(--bs-code-color);word-wrap:break-word}a>code{color:inherit}kbd{padding:.1875rem .375rem;font-size:.875em;color:var(--bs-body-bg);background-color:var(--bs-body-color);border-radius:.25rem}kbd kbd{padding:0;font-size:1em}figure{margin:0 0 1rem}img,svg{vertical-align:middle}table{caption-side:bottom;border-collapse:collapse}caption{padding-top:.5rem;padding-bottom:.5rem;color:#6c757d;text-align:right}th{text-align:inherit;text-align:-webkit-match-parent}tbody,td,tfoot,th,thead,tr{border-color:inherit;border-style:solid;border-width:0}label{display:inline-block}button{border-radius:0}button:focus:not(:focus-visible){outline:0}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,select{text-transform:none}[role=button]{cursor:pointer}select{word-wrap:normal}select:disabled{opacity:1}[list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator{display:none!important}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}::-moz-focus-inner{padding:0;border-style:none}textarea{resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{float:right;width:100%;padding:0;margin-bottom:.5rem;font-size:calc(1.275rem + .3vw);line-height:inherit}@media (min-width:1200px){legend{font-size:1.5rem}}legend+*{clear:right}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-fields-wrapper,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-text,::-webkit-datetime-edit-year-field{padding:0}::-webkit-inner-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:textfield}[type=email],[type=number],[type=tel],[type=url]{direction:ltr}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}::file-selector-button{font:inherit;-webkit-appearance:button}output{display:inline-block}iframe{border:0}summary{display:list-item;cursor:pointer}progress{vertical-align:baseline}[hidden]{display:none!important} 7 | /*# sourceMappingURL=bootstrap-reboot.rtl.min.css.map */ -------------------------------------------------------------------------------- /assets/vendor/glightbox/css/glightbox.css: -------------------------------------------------------------------------------- 1 | .glightbox-container { 2 | width: 100%; 3 | height: 100%; 4 | position: fixed; 5 | top: 0; 6 | left: 0; 7 | z-index: 999999 !important; 8 | overflow: hidden; 9 | -ms-touch-action: none; 10 | touch-action: none; 11 | -webkit-text-size-adjust: 100%; 12 | -moz-text-size-adjust: 100%; 13 | -ms-text-size-adjust: 100%; 14 | text-size-adjust: 100%; 15 | -webkit-backface-visibility: hidden; 16 | backface-visibility: hidden; 17 | outline: none; 18 | } 19 | 20 | .glightbox-container.inactive { 21 | display: none; 22 | } 23 | 24 | .glightbox-container .gcontainer { 25 | position: relative; 26 | width: 100%; 27 | height: 100%; 28 | z-index: 9999; 29 | overflow: hidden; 30 | } 31 | 32 | .glightbox-container .gslider { 33 | -webkit-transition: -webkit-transform 0.4s ease; 34 | transition: -webkit-transform 0.4s ease; 35 | transition: transform 0.4s ease; 36 | transition: transform 0.4s ease, -webkit-transform 0.4s ease; 37 | height: 100%; 38 | left: 0; 39 | top: 0; 40 | width: 100%; 41 | position: relative; 42 | overflow: hidden; 43 | display: -webkit-box !important; 44 | display: -ms-flexbox !important; 45 | display: flex !important; 46 | -webkit-box-pack: center; 47 | -ms-flex-pack: center; 48 | justify-content: center; 49 | -webkit-box-align: center; 50 | -ms-flex-align: center; 51 | align-items: center; 52 | -webkit-transform: translate3d(0, 0, 0); 53 | transform: translate3d(0, 0, 0); 54 | } 55 | 56 | .glightbox-container .gslide { 57 | width: 100%; 58 | position: absolute; 59 | -webkit-user-select: none; 60 | -moz-user-select: none; 61 | -ms-user-select: none; 62 | user-select: none; 63 | display: -webkit-box; 64 | display: -ms-flexbox; 65 | display: flex; 66 | -webkit-box-align: center; 67 | -ms-flex-align: center; 68 | align-items: center; 69 | -webkit-box-pack: center; 70 | -ms-flex-pack: center; 71 | justify-content: center; 72 | opacity: 0; 73 | } 74 | 75 | .glightbox-container .gslide.current { 76 | opacity: 1; 77 | z-index: 99999; 78 | position: relative; 79 | } 80 | 81 | .glightbox-container .gslide.prev { 82 | opacity: 1; 83 | z-index: 9999; 84 | } 85 | 86 | .glightbox-container .gslide-inner-content { 87 | width: 100%; 88 | } 89 | 90 | .glightbox-container .ginner-container { 91 | position: relative; 92 | width: 100%; 93 | display: -webkit-box; 94 | display: -ms-flexbox; 95 | display: flex; 96 | -webkit-box-pack: center; 97 | -ms-flex-pack: center; 98 | justify-content: center; 99 | -webkit-box-orient: vertical; 100 | -webkit-box-direction: normal; 101 | -ms-flex-direction: column; 102 | flex-direction: column; 103 | max-width: 100%; 104 | margin: auto; 105 | height: 100vh; 106 | } 107 | 108 | .glightbox-container .ginner-container.gvideo-container { 109 | width: 100%; 110 | } 111 | 112 | .glightbox-container .ginner-container.desc-bottom, 113 | .glightbox-container .ginner-container.desc-top { 114 | -webkit-box-orient: vertical; 115 | -webkit-box-direction: normal; 116 | -ms-flex-direction: column; 117 | flex-direction: column; 118 | } 119 | 120 | .glightbox-container .ginner-container.desc-left, 121 | .glightbox-container .ginner-container.desc-right { 122 | max-width: 100% !important; 123 | } 124 | 125 | .gslide iframe, 126 | .gslide video { 127 | outline: none !important; 128 | border: none; 129 | min-height: 165px; 130 | -webkit-overflow-scrolling: touch; 131 | -ms-touch-action: auto; 132 | touch-action: auto; 133 | } 134 | 135 | .gslide:not(.current) { 136 | pointer-events: none; 137 | } 138 | 139 | .gslide-image { 140 | -webkit-box-align: center; 141 | -ms-flex-align: center; 142 | align-items: center; 143 | } 144 | 145 | .gslide-image img { 146 | max-height: 100vh; 147 | display: block; 148 | padding: 0; 149 | float: none; 150 | outline: none; 151 | border: none; 152 | -webkit-user-select: none; 153 | -moz-user-select: none; 154 | -ms-user-select: none; 155 | user-select: none; 156 | max-width: 100vw; 157 | width: auto; 158 | height: auto; 159 | -o-object-fit: cover; 160 | object-fit: cover; 161 | -ms-touch-action: none; 162 | touch-action: none; 163 | margin: auto; 164 | min-width: 200px; 165 | } 166 | 167 | .desc-top .gslide-image img, 168 | .desc-bottom .gslide-image img { 169 | width: auto; 170 | } 171 | 172 | .desc-left .gslide-image img, 173 | .desc-right .gslide-image img { 174 | width: auto; 175 | max-width: 100%; 176 | } 177 | 178 | .gslide-image img.zoomable { 179 | position: relative; 180 | } 181 | 182 | .gslide-image img.dragging { 183 | cursor: -webkit-grabbing !important; 184 | cursor: grabbing !important; 185 | -webkit-transition: none; 186 | transition: none; 187 | } 188 | 189 | .gslide-video { 190 | position: relative; 191 | max-width: 100vh; 192 | width: 100% !important; 193 | } 194 | 195 | .gslide-video .plyr__poster-enabled.plyr--loading .plyr__poster { 196 | display: none; 197 | } 198 | 199 | .gslide-video .gvideo-wrapper { 200 | width: 100%; 201 | /* max-width: 160vmin; */ 202 | margin: auto; 203 | } 204 | 205 | .gslide-video::before { 206 | content: ''; 207 | position: absolute; 208 | width: 100%; 209 | height: 100%; 210 | background: rgba(255, 0, 0, 0.34); 211 | display: none; 212 | } 213 | 214 | .gslide-video.playing::before { 215 | display: none; 216 | } 217 | 218 | .gslide-video.fullscreen { 219 | max-width: 100% !important; 220 | min-width: 100%; 221 | height: 75vh; 222 | } 223 | 224 | .gslide-video.fullscreen video { 225 | max-width: 100% !important; 226 | width: 100% !important; 227 | } 228 | 229 | .gslide-inline { 230 | background: #fff; 231 | text-align: left; 232 | max-height: calc(100vh - 40px); 233 | overflow: auto; 234 | max-width: 100%; 235 | margin: auto; 236 | } 237 | 238 | .gslide-inline .ginlined-content { 239 | padding: 20px; 240 | width: 100%; 241 | } 242 | 243 | .gslide-inline .dragging { 244 | cursor: -webkit-grabbing !important; 245 | cursor: grabbing !important; 246 | -webkit-transition: none; 247 | transition: none; 248 | } 249 | 250 | .ginlined-content { 251 | overflow: auto; 252 | display: block !important; 253 | opacity: 1; 254 | } 255 | 256 | .gslide-external { 257 | display: -webkit-box; 258 | display: -ms-flexbox; 259 | display: flex; 260 | width: 100%; 261 | min-width: 100%; 262 | background: #fff; 263 | padding: 0; 264 | overflow: auto; 265 | max-height: 75vh; 266 | height: 100%; 267 | } 268 | 269 | .gslide-media { 270 | display: -webkit-box; 271 | display: -ms-flexbox; 272 | display: flex; 273 | width: auto; 274 | } 275 | 276 | .zoomed .gslide-media { 277 | -webkit-box-shadow: none !important; 278 | box-shadow: none !important; 279 | } 280 | 281 | .desc-top .gslide-media, 282 | .desc-bottom .gslide-media { 283 | margin: 0 auto; 284 | -webkit-box-orient: vertical; 285 | -webkit-box-direction: normal; 286 | -ms-flex-direction: column; 287 | flex-direction: column; 288 | } 289 | 290 | .gslide-description { 291 | position: relative; 292 | -webkit-box-flex: 1; 293 | -ms-flex: 1 0 100%; 294 | flex: 1 0 100%; 295 | } 296 | 297 | .gslide-description.description-left, 298 | .gslide-description.description-right { 299 | max-width: 100%; 300 | } 301 | 302 | .gslide-description.description-bottom, 303 | .gslide-description.description-top { 304 | margin: 0 auto; 305 | width: 100%; 306 | } 307 | 308 | .gslide-description p { 309 | margin-bottom: 12px; 310 | } 311 | 312 | .gslide-description p:last-child { 313 | margin-bottom: 0; 314 | } 315 | 316 | .zoomed .gslide-description { 317 | display: none; 318 | } 319 | 320 | .glightbox-button-hidden { 321 | display: none; 322 | } 323 | 324 | 325 | /* 326 | * Description for mobiles 327 | * something like facebook does the description 328 | * for the photos 329 | */ 330 | 331 | .glightbox-mobile .glightbox-container .gslide-description { 332 | height: auto !important; 333 | width: 100%; 334 | position: absolute; 335 | bottom: 0; 336 | padding: 19px 11px; 337 | max-width: 100vw !important; 338 | -webkit-box-ordinal-group: 3 !important; 339 | -ms-flex-order: 2 !important; 340 | order: 2 !important; 341 | max-height: 78vh; 342 | overflow: auto !important; 343 | background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.75))); 344 | background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.75) 100%); 345 | -webkit-transition: opacity 0.3s linear; 346 | transition: opacity 0.3s linear; 347 | padding-bottom: 50px; 348 | } 349 | 350 | .glightbox-mobile .glightbox-container .gslide-title { 351 | color: #fff; 352 | font-size: 1em; 353 | } 354 | 355 | .glightbox-mobile .glightbox-container .gslide-desc { 356 | color: #a1a1a1; 357 | } 358 | 359 | .glightbox-mobile .glightbox-container .gslide-desc a { 360 | color: #fff; 361 | font-weight: bold; 362 | } 363 | 364 | .glightbox-mobile .glightbox-container .gslide-desc * { 365 | color: inherit; 366 | } 367 | 368 | .glightbox-mobile .glightbox-container .gslide-desc .desc-more { 369 | color: #fff; 370 | opacity: 0.4; 371 | } 372 | 373 | .gdesc-open .gslide-media { 374 | -webkit-transition: opacity 0.5s ease; 375 | transition: opacity 0.5s ease; 376 | opacity: 0.4; 377 | } 378 | 379 | .gdesc-open .gdesc-inner { 380 | padding-bottom: 30px; 381 | } 382 | 383 | .gdesc-closed .gslide-media { 384 | -webkit-transition: opacity 0.5s ease; 385 | transition: opacity 0.5s ease; 386 | opacity: 1; 387 | } 388 | 389 | .greset { 390 | -webkit-transition: all 0.3s ease; 391 | transition: all 0.3s ease; 392 | } 393 | 394 | .gabsolute { 395 | position: absolute; 396 | } 397 | 398 | .grelative { 399 | position: relative; 400 | } 401 | 402 | .glightbox-desc { 403 | display: none !important; 404 | } 405 | 406 | .glightbox-open { 407 | overflow: hidden; 408 | } 409 | 410 | .gloader { 411 | height: 25px; 412 | width: 25px; 413 | -webkit-animation: lightboxLoader 0.8s infinite linear; 414 | animation: lightboxLoader 0.8s infinite linear; 415 | border: 2px solid #fff; 416 | border-right-color: transparent; 417 | border-radius: 50%; 418 | position: absolute; 419 | display: block; 420 | z-index: 9999; 421 | left: 0; 422 | right: 0; 423 | margin: 0 auto; 424 | top: 47%; 425 | } 426 | 427 | .goverlay { 428 | width: 100%; 429 | height: calc(100vh + 1px); 430 | position: fixed; 431 | top: -1px; 432 | left: 0; 433 | background: #000; 434 | will-change: opacity; 435 | } 436 | 437 | .glightbox-mobile .goverlay { 438 | background: #000; 439 | } 440 | 441 | .gprev, 442 | .gnext, 443 | .gclose { 444 | z-index: 99999; 445 | cursor: pointer; 446 | width: 26px; 447 | height: 44px; 448 | border: none; 449 | display: -webkit-box; 450 | display: -ms-flexbox; 451 | display: flex; 452 | -webkit-box-pack: center; 453 | -ms-flex-pack: center; 454 | justify-content: center; 455 | -webkit-box-align: center; 456 | -ms-flex-align: center; 457 | align-items: center; 458 | -webkit-box-orient: vertical; 459 | -webkit-box-direction: normal; 460 | -ms-flex-direction: column; 461 | flex-direction: column; 462 | } 463 | 464 | .gprev svg, 465 | .gnext svg, 466 | .gclose svg { 467 | display: block; 468 | width: 25px; 469 | height: auto; 470 | margin: 0; 471 | padding: 0; 472 | } 473 | 474 | .gprev.disabled, 475 | .gnext.disabled, 476 | .gclose.disabled { 477 | opacity: 0.1; 478 | } 479 | 480 | .gprev .garrow, 481 | .gnext .garrow, 482 | .gclose .garrow { 483 | stroke: #fff; 484 | } 485 | 486 | .gbtn.focused { 487 | outline: 2px solid #0f3d81; 488 | } 489 | 490 | iframe.wait-autoplay { 491 | opacity: 0; 492 | } 493 | 494 | .glightbox-closing .gnext, 495 | .glightbox-closing .gprev, 496 | .glightbox-closing .gclose { 497 | opacity: 0 !important; 498 | } 499 | 500 | 501 | /*Skin */ 502 | 503 | .glightbox-clean .gslide-description { 504 | background: #fff; 505 | } 506 | 507 | .glightbox-clean .gdesc-inner { 508 | padding: 22px 20px; 509 | } 510 | 511 | .glightbox-clean .gslide-title { 512 | font-size: 1em; 513 | font-weight: normal; 514 | font-family: arial; 515 | color: #000; 516 | margin-bottom: 19px; 517 | line-height: 1.4em; 518 | } 519 | 520 | .glightbox-clean .gslide-desc { 521 | font-size: 0.86em; 522 | margin-bottom: 0; 523 | font-family: arial; 524 | line-height: 1.4em; 525 | } 526 | 527 | .glightbox-clean .gslide-video { 528 | background: #000; 529 | } 530 | 531 | .glightbox-clean .gprev, 532 | .glightbox-clean .gnext, 533 | .glightbox-clean .gclose { 534 | background-color: rgba(0, 0, 0, 0.75); 535 | border-radius: 4px; 536 | } 537 | 538 | .glightbox-clean .gprev path, 539 | .glightbox-clean .gnext path, 540 | .glightbox-clean .gclose path { 541 | fill: #fff; 542 | } 543 | 544 | .glightbox-clean .gprev { 545 | position: absolute; 546 | top: -100%; 547 | left: 30px; 548 | width: 40px; 549 | height: 50px; 550 | } 551 | 552 | .glightbox-clean .gnext { 553 | position: absolute; 554 | top: -100%; 555 | right: 30px; 556 | width: 40px; 557 | height: 50px; 558 | } 559 | 560 | .glightbox-clean .gclose { 561 | width: 35px; 562 | height: 35px; 563 | top: 15px; 564 | right: 10px; 565 | position: absolute; 566 | } 567 | 568 | .glightbox-clean .gclose svg { 569 | width: 18px; 570 | height: auto; 571 | } 572 | 573 | .glightbox-clean .gclose:hover { 574 | opacity: 1; 575 | } 576 | 577 | 578 | /*CSS Animations*/ 579 | 580 | .gfadeIn { 581 | -webkit-animation: gfadeIn 0.5s ease; 582 | animation: gfadeIn 0.5s ease; 583 | } 584 | 585 | .gfadeOut { 586 | -webkit-animation: gfadeOut 0.5s ease; 587 | animation: gfadeOut 0.5s ease; 588 | } 589 | 590 | .gslideOutLeft { 591 | -webkit-animation: gslideOutLeft 0.3s ease; 592 | animation: gslideOutLeft 0.3s ease; 593 | } 594 | 595 | .gslideInLeft { 596 | -webkit-animation: gslideInLeft 0.3s ease; 597 | animation: gslideInLeft 0.3s ease; 598 | } 599 | 600 | .gslideOutRight { 601 | -webkit-animation: gslideOutRight 0.3s ease; 602 | animation: gslideOutRight 0.3s ease; 603 | } 604 | 605 | .gslideInRight { 606 | -webkit-animation: gslideInRight 0.3s ease; 607 | animation: gslideInRight 0.3s ease; 608 | } 609 | 610 | .gzoomIn { 611 | -webkit-animation: gzoomIn 0.5s ease; 612 | animation: gzoomIn 0.5s ease; 613 | } 614 | 615 | .gzoomOut { 616 | -webkit-animation: gzoomOut 0.5s ease; 617 | animation: gzoomOut 0.5s ease; 618 | } 619 | 620 | @-webkit-keyframes lightboxLoader { 621 | 0% { 622 | -webkit-transform: rotate(0deg); 623 | transform: rotate(0deg); 624 | } 625 | 100% { 626 | -webkit-transform: rotate(360deg); 627 | transform: rotate(360deg); 628 | } 629 | } 630 | 631 | @keyframes lightboxLoader { 632 | 0% { 633 | -webkit-transform: rotate(0deg); 634 | transform: rotate(0deg); 635 | } 636 | 100% { 637 | -webkit-transform: rotate(360deg); 638 | transform: rotate(360deg); 639 | } 640 | } 641 | 642 | @-webkit-keyframes gfadeIn { 643 | from { 644 | opacity: 0; 645 | } 646 | to { 647 | opacity: 1; 648 | } 649 | } 650 | 651 | @keyframes gfadeIn { 652 | from { 653 | opacity: 0; 654 | } 655 | to { 656 | opacity: 1; 657 | } 658 | } 659 | 660 | @-webkit-keyframes gfadeOut { 661 | from { 662 | opacity: 1; 663 | } 664 | to { 665 | opacity: 0; 666 | } 667 | } 668 | 669 | @keyframes gfadeOut { 670 | from { 671 | opacity: 1; 672 | } 673 | to { 674 | opacity: 0; 675 | } 676 | } 677 | 678 | @-webkit-keyframes gslideInLeft { 679 | from { 680 | opacity: 0; 681 | -webkit-transform: translate3d(-60%, 0, 0); 682 | transform: translate3d(-60%, 0, 0); 683 | } 684 | to { 685 | visibility: visible; 686 | -webkit-transform: translate3d(0, 0, 0); 687 | transform: translate3d(0, 0, 0); 688 | opacity: 1; 689 | } 690 | } 691 | 692 | @keyframes gslideInLeft { 693 | from { 694 | opacity: 0; 695 | -webkit-transform: translate3d(-60%, 0, 0); 696 | transform: translate3d(-60%, 0, 0); 697 | } 698 | to { 699 | visibility: visible; 700 | -webkit-transform: translate3d(0, 0, 0); 701 | transform: translate3d(0, 0, 0); 702 | opacity: 1; 703 | } 704 | } 705 | 706 | @-webkit-keyframes gslideOutLeft { 707 | from { 708 | opacity: 1; 709 | visibility: visible; 710 | -webkit-transform: translate3d(0, 0, 0); 711 | transform: translate3d(0, 0, 0); 712 | } 713 | to { 714 | -webkit-transform: translate3d(-60%, 0, 0); 715 | transform: translate3d(-60%, 0, 0); 716 | opacity: 0; 717 | visibility: hidden; 718 | } 719 | } 720 | 721 | @keyframes gslideOutLeft { 722 | from { 723 | opacity: 1; 724 | visibility: visible; 725 | -webkit-transform: translate3d(0, 0, 0); 726 | transform: translate3d(0, 0, 0); 727 | } 728 | to { 729 | -webkit-transform: translate3d(-60%, 0, 0); 730 | transform: translate3d(-60%, 0, 0); 731 | opacity: 0; 732 | visibility: hidden; 733 | } 734 | } 735 | 736 | @-webkit-keyframes gslideInRight { 737 | from { 738 | opacity: 0; 739 | visibility: visible; 740 | -webkit-transform: translate3d(60%, 0, 0); 741 | transform: translate3d(60%, 0, 0); 742 | } 743 | to { 744 | -webkit-transform: translate3d(0, 0, 0); 745 | transform: translate3d(0, 0, 0); 746 | opacity: 1; 747 | } 748 | } 749 | 750 | @keyframes gslideInRight { 751 | from { 752 | opacity: 0; 753 | visibility: visible; 754 | -webkit-transform: translate3d(60%, 0, 0); 755 | transform: translate3d(60%, 0, 0); 756 | } 757 | to { 758 | -webkit-transform: translate3d(0, 0, 0); 759 | transform: translate3d(0, 0, 0); 760 | opacity: 1; 761 | } 762 | } 763 | 764 | @-webkit-keyframes gslideOutRight { 765 | from { 766 | opacity: 1; 767 | visibility: visible; 768 | -webkit-transform: translate3d(0, 0, 0); 769 | transform: translate3d(0, 0, 0); 770 | } 771 | to { 772 | -webkit-transform: translate3d(60%, 0, 0); 773 | transform: translate3d(60%, 0, 0); 774 | opacity: 0; 775 | } 776 | } 777 | 778 | @keyframes gslideOutRight { 779 | from { 780 | opacity: 1; 781 | visibility: visible; 782 | -webkit-transform: translate3d(0, 0, 0); 783 | transform: translate3d(0, 0, 0); 784 | } 785 | to { 786 | -webkit-transform: translate3d(60%, 0, 0); 787 | transform: translate3d(60%, 0, 0); 788 | opacity: 0; 789 | } 790 | } 791 | 792 | @-webkit-keyframes gzoomIn { 793 | from { 794 | opacity: 0; 795 | -webkit-transform: scale3d(0.3, 0.3, 0.3); 796 | transform: scale3d(0.3, 0.3, 0.3); 797 | } 798 | to { 799 | opacity: 1; 800 | } 801 | } 802 | 803 | @keyframes gzoomIn { 804 | from { 805 | opacity: 0; 806 | -webkit-transform: scale3d(0.3, 0.3, 0.3); 807 | transform: scale3d(0.3, 0.3, 0.3); 808 | } 809 | to { 810 | opacity: 1; 811 | } 812 | } 813 | 814 | @-webkit-keyframes gzoomOut { 815 | from { 816 | opacity: 1; 817 | } 818 | 50% { 819 | opacity: 0; 820 | -webkit-transform: scale3d(0.3, 0.3, 0.3); 821 | transform: scale3d(0.3, 0.3, 0.3); 822 | } 823 | to { 824 | opacity: 0; 825 | } 826 | } 827 | 828 | @keyframes gzoomOut { 829 | from { 830 | opacity: 1; 831 | } 832 | 50% { 833 | opacity: 0; 834 | -webkit-transform: scale3d(0.3, 0.3, 0.3); 835 | transform: scale3d(0.3, 0.3, 0.3); 836 | } 837 | to { 838 | opacity: 0; 839 | } 840 | } 841 | 842 | @media (min-width: 769px) { 843 | .glightbox-container .ginner-container { 844 | width: auto; 845 | height: auto; 846 | -webkit-box-orient: horizontal; 847 | -webkit-box-direction: normal; 848 | -ms-flex-direction: row; 849 | flex-direction: row; 850 | } 851 | .glightbox-container .ginner-container.desc-top .gslide-description { 852 | -webkit-box-ordinal-group: 1; 853 | -ms-flex-order: 0; 854 | order: 0; 855 | } 856 | .glightbox-container .ginner-container.desc-top .gslide-image, 857 | .glightbox-container .ginner-container.desc-top .gslide-image img { 858 | -webkit-box-ordinal-group: 2; 859 | -ms-flex-order: 1; 860 | order: 1; 861 | } 862 | .glightbox-container .ginner-container.desc-left .gslide-description { 863 | -webkit-box-ordinal-group: 1; 864 | -ms-flex-order: 0; 865 | order: 0; 866 | } 867 | .glightbox-container .ginner-container.desc-left .gslide-image { 868 | -webkit-box-ordinal-group: 2; 869 | -ms-flex-order: 1; 870 | order: 1; 871 | } 872 | .gslide-image img { 873 | max-height: 97vh; 874 | max-width: 100%; 875 | } 876 | .gslide-image img.zoomable { 877 | cursor: -webkit-zoom-in; 878 | cursor: zoom-in; 879 | } 880 | .zoomed .gslide-image img.zoomable { 881 | cursor: -webkit-grab; 882 | cursor: grab; 883 | } 884 | .gslide-inline { 885 | max-height: 95vh; 886 | } 887 | .gslide-external { 888 | max-height: 100vh; 889 | } 890 | .gslide-description.description-left, 891 | .gslide-description.description-right { 892 | max-width: 275px; 893 | } 894 | .glightbox-open { 895 | height: auto; 896 | } 897 | .goverlay { 898 | background: rgba(0, 0, 0, 0.92); 899 | } 900 | .glightbox-clean .gslide-media { 901 | -webkit-box-shadow: 1px 2px 9px 0px rgba(0, 0, 0, 0.65); 902 | box-shadow: 1px 2px 9px 0px rgba(0, 0, 0, 0.65); 903 | } 904 | .glightbox-clean .description-left .gdesc-inner, 905 | .glightbox-clean .description-right .gdesc-inner { 906 | position: absolute; 907 | height: 100%; 908 | overflow-y: auto; 909 | } 910 | .glightbox-clean .gprev, 911 | .glightbox-clean .gnext, 912 | .glightbox-clean .gclose { 913 | background-color: rgba(0, 0, 0, 0.32); 914 | } 915 | .glightbox-clean .gprev:hover, 916 | .glightbox-clean .gnext:hover, 917 | .glightbox-clean .gclose:hover { 918 | background-color: rgba(0, 0, 0, 0.7); 919 | } 920 | .glightbox-clean .gprev { 921 | top: 45%; 922 | } 923 | .glightbox-clean .gnext { 924 | top: 45%; 925 | } 926 | } 927 | 928 | @media (min-width: 992px) { 929 | .glightbox-clean .gclose { 930 | opacity: 0.7; 931 | right: 20px; 932 | } 933 | } 934 | 935 | @media screen and (max-height: 420px) { 936 | .goverlay { 937 | background: #000; 938 | } 939 | } 940 | -------------------------------------------------------------------------------- /assets/vendor/glightbox/css/glightbox.min.css: -------------------------------------------------------------------------------- 1 | .glightbox-container{width:100%;height:100%;position:fixed;top:0;left:0;z-index:999999!important;overflow:hidden;-ms-touch-action:none;touch-action:none;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;outline:0}.glightbox-container.inactive{display:none}.glightbox-container .gcontainer{position:relative;width:100%;height:100%;z-index:9999;overflow:hidden}.glightbox-container .gslider{-webkit-transition:-webkit-transform .4s ease;transition:-webkit-transform .4s ease;transition:transform .4s ease;transition:transform .4s ease,-webkit-transform .4s ease;height:100%;left:0;top:0;width:100%;position:relative;overflow:hidden;display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.glightbox-container .gslide{width:100%;position:absolute;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;opacity:0}.glightbox-container .gslide.current{opacity:1;z-index:99999;position:relative}.glightbox-container .gslide.prev{opacity:1;z-index:9999}.glightbox-container .gslide-inner-content{width:100%}.glightbox-container .ginner-container{position:relative;width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-width:100%;margin:auto;height:100vh}.glightbox-container .ginner-container.gvideo-container{width:100%}.glightbox-container .ginner-container.desc-bottom,.glightbox-container .ginner-container.desc-top{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.glightbox-container .ginner-container.desc-left,.glightbox-container .ginner-container.desc-right{max-width:100%!important}.gslide iframe,.gslide video{outline:0!important;border:none;min-height:165px;-webkit-overflow-scrolling:touch;-ms-touch-action:auto;touch-action:auto}.gslide:not(.current){pointer-events:none}.gslide-image{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.gslide-image img{max-height:100vh;display:block;padding:0;float:none;outline:0;border:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;max-width:100vw;width:auto;height:auto;-o-object-fit:cover;object-fit:cover;-ms-touch-action:none;touch-action:none;margin:auto;min-width:200px}.desc-bottom .gslide-image img,.desc-top .gslide-image img{width:auto}.desc-left .gslide-image img,.desc-right .gslide-image img{width:auto;max-width:100%}.gslide-image img.zoomable{position:relative}.gslide-image img.dragging{cursor:-webkit-grabbing!important;cursor:grabbing!important;-webkit-transition:none;transition:none}.gslide-video{position:relative;max-width:100vh;width:100%!important}.gslide-video .plyr__poster-enabled.plyr--loading .plyr__poster{display:none}.gslide-video .gvideo-wrapper{width:100%;margin:auto}.gslide-video::before{content:'';position:absolute;width:100%;height:100%;background:rgba(255,0,0,.34);display:none}.gslide-video.playing::before{display:none}.gslide-video.fullscreen{max-width:100%!important;min-width:100%;height:75vh}.gslide-video.fullscreen video{max-width:100%!important;width:100%!important}.gslide-inline{background:#fff;text-align:left;max-height:calc(100vh - 40px);overflow:auto;max-width:100%;margin:auto}.gslide-inline .ginlined-content{padding:20px;width:100%}.gslide-inline .dragging{cursor:-webkit-grabbing!important;cursor:grabbing!important;-webkit-transition:none;transition:none}.ginlined-content{overflow:auto;display:block!important;opacity:1}.gslide-external{display:-webkit-box;display:-ms-flexbox;display:flex;width:100%;min-width:100%;background:#fff;padding:0;overflow:auto;max-height:75vh;height:100%}.gslide-media{display:-webkit-box;display:-ms-flexbox;display:flex;width:auto}.zoomed .gslide-media{-webkit-box-shadow:none!important;box-shadow:none!important}.desc-bottom .gslide-media,.desc-top .gslide-media{margin:0 auto;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.gslide-description{position:relative;-webkit-box-flex:1;-ms-flex:1 0 100%;flex:1 0 100%}.gslide-description.description-left,.gslide-description.description-right{max-width:100%}.gslide-description.description-bottom,.gslide-description.description-top{margin:0 auto;width:100%}.gslide-description p{margin-bottom:12px}.gslide-description p:last-child{margin-bottom:0}.zoomed .gslide-description{display:none}.glightbox-button-hidden{display:none}.glightbox-mobile .glightbox-container .gslide-description{height:auto!important;width:100%;position:absolute;bottom:0;padding:19px 11px;max-width:100vw!important;-webkit-box-ordinal-group:3!important;-ms-flex-order:2!important;order:2!important;max-height:78vh;overflow:auto!important;background:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,0)),to(rgba(0,0,0,.75)));background:linear-gradient(to bottom,rgba(0,0,0,0) 0,rgba(0,0,0,.75) 100%);-webkit-transition:opacity .3s linear;transition:opacity .3s linear;padding-bottom:50px}.glightbox-mobile .glightbox-container .gslide-title{color:#fff;font-size:1em}.glightbox-mobile .glightbox-container .gslide-desc{color:#a1a1a1}.glightbox-mobile .glightbox-container .gslide-desc a{color:#fff;font-weight:700}.glightbox-mobile .glightbox-container .gslide-desc *{color:inherit}.glightbox-mobile .glightbox-container .gslide-desc .desc-more{color:#fff;opacity:.4}.gdesc-open .gslide-media{-webkit-transition:opacity .5s ease;transition:opacity .5s ease;opacity:.4}.gdesc-open .gdesc-inner{padding-bottom:30px}.gdesc-closed .gslide-media{-webkit-transition:opacity .5s ease;transition:opacity .5s ease;opacity:1}.greset{-webkit-transition:all .3s ease;transition:all .3s ease}.gabsolute{position:absolute}.grelative{position:relative}.glightbox-desc{display:none!important}.glightbox-open{overflow:hidden}.gloader{height:25px;width:25px;-webkit-animation:lightboxLoader .8s infinite linear;animation:lightboxLoader .8s infinite linear;border:2px solid #fff;border-right-color:transparent;border-radius:50%;position:absolute;display:block;z-index:9999;left:0;right:0;margin:0 auto;top:47%}.goverlay{width:100%;height:calc(100vh + 1px);position:fixed;top:-1px;left:0;background:#000;will-change:opacity}.glightbox-mobile .goverlay{background:#000}.gclose,.gnext,.gprev{z-index:99999;cursor:pointer;width:26px;height:44px;border:none;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.gclose svg,.gnext svg,.gprev svg{display:block;width:25px;height:auto;margin:0;padding:0}.gclose.disabled,.gnext.disabled,.gprev.disabled{opacity:.1}.gclose .garrow,.gnext .garrow,.gprev .garrow{stroke:#fff}.gbtn.focused{outline:2px solid #0f3d81}iframe.wait-autoplay{opacity:0}.glightbox-closing .gclose,.glightbox-closing .gnext,.glightbox-closing .gprev{opacity:0!important}.glightbox-clean .gslide-description{background:#fff}.glightbox-clean .gdesc-inner{padding:22px 20px}.glightbox-clean .gslide-title{font-size:1em;font-weight:400;font-family:arial;color:#000;margin-bottom:19px;line-height:1.4em}.glightbox-clean .gslide-desc{font-size:.86em;margin-bottom:0;font-family:arial;line-height:1.4em}.glightbox-clean .gslide-video{background:#000}.glightbox-clean .gclose,.glightbox-clean .gnext,.glightbox-clean .gprev{background-color:rgba(0,0,0,.75);border-radius:4px}.glightbox-clean .gclose path,.glightbox-clean .gnext path,.glightbox-clean .gprev path{fill:#fff}.glightbox-clean .gprev{position:absolute;top:-100%;left:30px;width:40px;height:50px}.glightbox-clean .gnext{position:absolute;top:-100%;right:30px;width:40px;height:50px}.glightbox-clean .gclose{width:35px;height:35px;top:15px;right:10px;position:absolute}.glightbox-clean .gclose svg{width:18px;height:auto}.glightbox-clean .gclose:hover{opacity:1}.gfadeIn{-webkit-animation:gfadeIn .5s ease;animation:gfadeIn .5s ease}.gfadeOut{-webkit-animation:gfadeOut .5s ease;animation:gfadeOut .5s ease}.gslideOutLeft{-webkit-animation:gslideOutLeft .3s ease;animation:gslideOutLeft .3s ease}.gslideInLeft{-webkit-animation:gslideInLeft .3s ease;animation:gslideInLeft .3s ease}.gslideOutRight{-webkit-animation:gslideOutRight .3s ease;animation:gslideOutRight .3s ease}.gslideInRight{-webkit-animation:gslideInRight .3s ease;animation:gslideInRight .3s ease}.gzoomIn{-webkit-animation:gzoomIn .5s ease;animation:gzoomIn .5s ease}.gzoomOut{-webkit-animation:gzoomOut .5s ease;animation:gzoomOut .5s ease}@-webkit-keyframes lightboxLoader{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes lightboxLoader{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@-webkit-keyframes gfadeIn{from{opacity:0}to{opacity:1}}@keyframes gfadeIn{from{opacity:0}to{opacity:1}}@-webkit-keyframes gfadeOut{from{opacity:1}to{opacity:0}}@keyframes gfadeOut{from{opacity:1}to{opacity:0}}@-webkit-keyframes gslideInLeft{from{opacity:0;-webkit-transform:translate3d(-60%,0,0);transform:translate3d(-60%,0,0)}to{visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}}@keyframes gslideInLeft{from{opacity:0;-webkit-transform:translate3d(-60%,0,0);transform:translate3d(-60%,0,0)}to{visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}}@-webkit-keyframes gslideOutLeft{from{opacity:1;visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(-60%,0,0);transform:translate3d(-60%,0,0);opacity:0;visibility:hidden}}@keyframes gslideOutLeft{from{opacity:1;visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(-60%,0,0);transform:translate3d(-60%,0,0);opacity:0;visibility:hidden}}@-webkit-keyframes gslideInRight{from{opacity:0;visibility:visible;-webkit-transform:translate3d(60%,0,0);transform:translate3d(60%,0,0)}to{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}}@keyframes gslideInRight{from{opacity:0;visibility:visible;-webkit-transform:translate3d(60%,0,0);transform:translate3d(60%,0,0)}to{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}}@-webkit-keyframes gslideOutRight{from{opacity:1;visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(60%,0,0);transform:translate3d(60%,0,0);opacity:0}}@keyframes gslideOutRight{from{opacity:1;visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(60%,0,0);transform:translate3d(60%,0,0);opacity:0}}@-webkit-keyframes gzoomIn{from{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:1}}@keyframes gzoomIn{from{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:1}}@-webkit-keyframes gzoomOut{from{opacity:1}50%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:0}}@keyframes gzoomOut{from{opacity:1}50%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:0}}@media (min-width:769px){.glightbox-container .ginner-container{width:auto;height:auto;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.glightbox-container .ginner-container.desc-top .gslide-description{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.glightbox-container .ginner-container.desc-top .gslide-image,.glightbox-container .ginner-container.desc-top .gslide-image img{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.glightbox-container .ginner-container.desc-left .gslide-description{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.glightbox-container .ginner-container.desc-left .gslide-image{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.gslide-image img{max-height:97vh;max-width:100%}.gslide-image img.zoomable{cursor:-webkit-zoom-in;cursor:zoom-in}.zoomed .gslide-image img.zoomable{cursor:-webkit-grab;cursor:grab}.gslide-inline{max-height:95vh}.gslide-external{max-height:100vh}.gslide-description.description-left,.gslide-description.description-right{max-width:275px}.glightbox-open{height:auto}.goverlay{background:rgba(0,0,0,.92)}.glightbox-clean .gslide-media{-webkit-box-shadow:1px 2px 9px 0 rgba(0,0,0,.65);box-shadow:1px 2px 9px 0 rgba(0,0,0,.65)}.glightbox-clean .description-left .gdesc-inner,.glightbox-clean .description-right .gdesc-inner{position:absolute;height:100%;overflow-y:auto}.glightbox-clean .gclose,.glightbox-clean .gnext,.glightbox-clean .gprev{background-color:rgba(0,0,0,.32)}.glightbox-clean .gclose:hover,.glightbox-clean .gnext:hover,.glightbox-clean .gprev:hover{background-color:rgba(0,0,0,.7)}.glightbox-clean .gprev{top:45%}.glightbox-clean .gnext{top:45%}}@media (min-width:992px){.glightbox-clean .gclose{opacity:.7;right:20px}}@media screen and (max-height:420px){.goverlay{background:#000}} -------------------------------------------------------------------------------- /assets/vendor/php-email-form/validate.js: -------------------------------------------------------------------------------- 1 | /** 2 | * PHP Email Form Validation - v3.5 3 | * URL: https://bootstrapmade.com/php-email-form/ 4 | * Author: BootstrapMade.com 5 | */ 6 | (function () { 7 | "use strict"; 8 | 9 | let forms = document.querySelectorAll('.php-email-form'); 10 | 11 | forms.forEach( function(e) { 12 | e.addEventListener('submit', function(event) { 13 | event.preventDefault(); 14 | 15 | let thisForm = this; 16 | 17 | let action = thisForm.getAttribute('action'); 18 | let recaptcha = thisForm.getAttribute('data-recaptcha-site-key'); 19 | 20 | if( ! action ) { 21 | displayError(thisForm, 'The form action property is not set!') 22 | return; 23 | } 24 | thisForm.querySelector('.loading').classList.add('d-block'); 25 | thisForm.querySelector('.error-message').classList.remove('d-block'); 26 | thisForm.querySelector('.sent-message').classList.remove('d-block'); 27 | 28 | let formData = new FormData( thisForm ); 29 | 30 | if ( recaptcha ) { 31 | if(typeof grecaptcha !== "undefined" ) { 32 | grecaptcha.ready(function() { 33 | try { 34 | grecaptcha.execute(recaptcha, {action: 'php_email_form_submit'}) 35 | .then(token => { 36 | formData.set('recaptcha-response', token); 37 | php_email_form_submit(thisForm, action, formData); 38 | }) 39 | } catch(error) { 40 | displayError(thisForm, error) 41 | } 42 | }); 43 | } else { 44 | displayError(thisForm, 'The reCaptcha javascript API url is not loaded!') 45 | } 46 | } else { 47 | php_email_form_submit(thisForm, action, formData); 48 | } 49 | }); 50 | }); 51 | 52 | function php_email_form_submit(thisForm, action, formData) { 53 | fetch(action, { 54 | method: 'POST', 55 | body: formData, 56 | headers: {'X-Requested-With': 'XMLHttpRequest'} 57 | }) 58 | .then(response => { 59 | return response.text(); 60 | }) 61 | .then(data => { 62 | thisForm.querySelector('.loading').classList.remove('d-block'); 63 | if (data.trim() == 'OK') { 64 | thisForm.querySelector('.sent-message').classList.add('d-block'); 65 | thisForm.reset(); 66 | } else { 67 | throw new Error(data ? data : 'Form submission failed and no error message returned from: ' + action); 68 | } 69 | }) 70 | .catch((error) => { 71 | displayError(thisForm, error); 72 | }); 73 | } 74 | 75 | function displayError(thisForm, error) { 76 | thisForm.querySelector('.loading').classList.remove('d-block'); 77 | thisForm.querySelector('.error-message').innerHTML = error; 78 | thisForm.querySelector('.error-message').classList.add('d-block'); 79 | } 80 | 81 | })(); 82 | -------------------------------------------------------------------------------- /assets/vendor/purecounter/purecounter_vanilla.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * purecounter.js - A simple yet configurable native javascript counter which you can count on. 3 | * Author: Stig Rex 4 | * Version: 1.5.0 5 | * Url: https://github.com/srexi/purecounterjs 6 | * License: MIT 7 | */ 8 | !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.PureCounter=t():e.PureCounter=t()}(self,(function(){return e={638:function(e){function t(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function r(e){return function(e){if(Array.isArray(e))return n(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return n(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?n(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function n(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r1&&void 0!==arguments[1]?arguments[1]:{},r={};for(var n in e)if(t=={}||t.hasOwnProperty(n)){var o=c(e[n]);r[n]=o,n.match(/duration|pulse/)&&(r[n]="boolean"!=typeof o?1e3*o:o)}return Object.assign({},t,r)}function i(e,t){var r=(t.end-t.start)/(t.duration/t.delay),n="inc";t.start>t.end&&(n="dec",r*=-1);var o=c(t.start);e.innerHTML=u(o,t),!0===t.once&&e.setAttribute("data-purecounter-duration",0);var i=setInterval((function(){var a=function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"inc";return e=c(e),t=c(t),parseFloat("inc"===r?e+t:e-t)}(o,r,n);e.innerHTML=u(a,t),((o=a)>=t.end&&"inc"==n||o<=t.end&&"dec"==n)&&(e.innerHTML=u(t.end,t),t.pulse&&(e.setAttribute("data-purecounter-duration",0),setTimeout((function(){e.setAttribute("data-purecounter-duration",t.duration/1e3)}),t.pulse)),clearInterval(i))}),t.delay)}function a(e,t){return Math.pow(e,t)}function u(e,t){var r={minimumFractionDigits:t.decimals,maximumFractionDigits:t.decimals},n="string"==typeof t.formater?t.formater:void 0;return e=function(e,t){if(t.filesizing||t.currency){e=Math.abs(Number(e));var r=1e3,n=t.currency&&"string"==typeof t.currency?t.currency:"",o=t.decimals||1,i=["","K","M","B","T"],u="";t.filesizing&&(r=1024,i=["bytes","KB","MB","GB","TB"]);for(var c=4;c>=0;c--)if(0===c&&(u="".concat(e.toFixed(o)," ").concat(i[c])),e>=a(r,c)){u="".concat((e/a(r,c)).toFixed(o)," ").concat(i[c]);break}return n+u}return parseFloat(e)}(e,t),function(e,t){if(t.formater){var r=t.separator?"string"==typeof t.separator?t.separator:",":"";return"en-US"!==t.formater&&!0===t.separator?e:(n=r,e.replace(/^(?:(\d{1,3},(?:\d{1,3},?)*)|(\d{1,3}\.(?:\d{1,3}\.?)*)|(\d{1,3}(?:\s\d{1,3})*))([\.,]?\d{0,2}?)$/gi,(function(e,t,r,o,i){var a="",u="";if(void 0!==t?(a=t.replace(new RegExp(/,/gi,"gi"),n),u=","):void 0!==r?a=r.replace(new RegExp(/\./gi,"gi"),n):void 0!==o&&(a=o.replace(new RegExp(/ /gi,"gi"),n)),void 0!==i){var c=","!==u&&","!==n?",":".";a+=void 0!==i?i.replace(new RegExp(/\.|,/gi,"gi"),c):""}return a})))}var n;return e}(e=t.formater?e.toLocaleString(n,r):parseInt(e).toString(),t)}function c(e){return/^[0-9]+\.[0-9]+$/.test(e)?parseFloat(e):/^[0-9]+$/.test(e)?parseInt(e):/^true|false/i.test(e)?/^true/i.test(e):e}function f(e){for(var t=e.offsetTop,r=e.offsetLeft,n=e.offsetWidth,o=e.offsetHeight;e.offsetParent;)t+=(e=e.offsetParent).offsetTop,r+=e.offsetLeft;return t>=window.pageYOffset&&r>=window.pageXOffset&&t+o<=window.pageYOffset+window.innerHeight&&r+n<=window.pageXOffset+window.innerWidth}function s(){return"IntersectionObserver"in window&&"IntersectionObserverEntry"in window&&"intersectionRatio"in window.IntersectionObserverEntry.prototype}e.exports=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n={start:0,end:100,duration:2e3,delay:10,once:!0,pulse:!1,decimals:0,legacy:!0,filesizing:!1,currency:!1,separator:!1,formater:"us-US",selector:".purecounter"},a=o(e,n);function d(){var e=document.querySelectorAll(a.selector);if(0!==e.length)if(s()){var t=new IntersectionObserver(p.bind(this),{root:null,rootMargin:"20px",threshold:.5});e.forEach((function(e){t.observe(e)}))}else window.addEventListener&&(l(e),window.addEventListener("scroll",(function(t){l(e)}),{passive:!0}))}function l(e){e.forEach((function(e){!0===v(e).legacy&&f(e)&&p([e])}))}function p(e,t){e.forEach((function(e){var r=e.target||e,n=v(r);if(n.duration<=0)return r.innerHTML=u(n.end,n);if(!t&&!f(e)||t&&e.intersectionRatio<.5){var o=n.start>n.end?n.end:n.start;return r.innerHTML=u(o,n)}setTimeout((function(){return i(r,n)}),n.delay)}))}function v(e){var n=a,i=[].filter.call(e.attributes,(function(e){return/^data-purecounter-/.test(e.name)}));return o(0!=i.length?Object.assign.apply(Object,[{}].concat(r(i.map((function(e){var r=e.name,n=e.value;return t({},r.replace("data-purecounter-","").toLowerCase(),c(n))}))))):{},n)}d()}}},t={},r=function r(n){var o=t[n];if(void 0!==o)return o.exports;var i=t[n]={exports:{}};return e[n](i,i.exports,r),i.exports}(638),r;var e,t,r})); 9 | //# sourceMappingURL=purecounter_vanilla.js.map -------------------------------------------------------------------------------- /assets/vendor/remixicon/remixicon.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TalelMejri/PHP_sem1_TP/9fb95a9821c07381c5708b9543f3e8b3f92446b7/assets/vendor/remixicon/remixicon.eot -------------------------------------------------------------------------------- /assets/vendor/remixicon/remixicon.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TalelMejri/PHP_sem1_TP/9fb95a9821c07381c5708b9543f3e8b3f92446b7/assets/vendor/remixicon/remixicon.ttf -------------------------------------------------------------------------------- /assets/vendor/remixicon/remixicon.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TalelMejri/PHP_sem1_TP/9fb95a9821c07381c5708b9543f3e8b3f92446b7/assets/vendor/remixicon/remixicon.woff -------------------------------------------------------------------------------- /assets/vendor/remixicon/remixicon.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TalelMejri/PHP_sem1_TP/9fb95a9821c07381c5708b9543f3e8b3f92446b7/assets/vendor/remixicon/remixicon.woff2 -------------------------------------------------------------------------------- /assets/vendor/swiper/swiper-bundle.min.css: -------------------------------------------------------------------------------- 1 | /** 2 | * Swiper 8.4.3 3 | * Most modern mobile touch slider and framework with hardware accelerated transitions 4 | * https://swiperjs.com 5 | * 6 | * Copyright 2014-2022 Vladimir Kharlampidi 7 | * 8 | * Released under the MIT License 9 | * 10 | * Released on: October 6, 2022 11 | */ 12 | 13 | @font-face{font-family:swiper-icons;src:url('data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA');font-weight:400;font-style:normal}:root{--swiper-theme-color:#007aff}.swiper{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:flex;transition-property:transform;box-sizing:content-box}.swiper-android .swiper-slide,.swiper-wrapper{transform:translate3d(0px,0,0)}.swiper-pointer-events{touch-action:pan-y}.swiper-pointer-events.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-3d,.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-cube-shadow,.swiper-3d .swiper-slide,.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-3d .swiper-slide-shadow{background:rgba(0,0,0,.15)}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(to left,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(to right,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(to top,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(to bottom,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-horizontal.swiper-css-mode>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-vertical.swiper-css-mode>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-centered>.swiper-wrapper::before{content:'';flex-shrink:0;order:9999}.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-centered.swiper-horizontal>.swiper-wrapper::before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-centered.swiper-vertical>.swiper-wrapper::before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center}.swiper-virtual .swiper-slide{-webkit-backface-visibility:hidden;transform:translateZ(0)}.swiper-virtual.swiper-css-mode .swiper-wrapper::after{content:'';position:absolute;left:0;top:0;pointer-events:none}.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after{height:1px;width:var(--swiper-virtual-size)}.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after{width:1px;height:var(--swiper-virtual-size)}:root{--swiper-navigation-size:44px}.swiper-button-next,.swiper-button-prev{position:absolute;top:50%;width:calc(var(--swiper-navigation-size)/ 44 * 27);height:var(--swiper-navigation-size);margin-top:calc(0px - (var(--swiper-navigation-size)/ 2));z-index:10;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--swiper-navigation-color,var(--swiper-theme-color))}.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}.swiper-button-next.swiper-button-hidden,.swiper-button-prev.swiper-button-hidden{opacity:0;cursor:auto;pointer-events:none}.swiper-navigation-disabled .swiper-button-next,.swiper-navigation-disabled .swiper-button-prev{display:none!important}.swiper-button-next:after,.swiper-button-prev:after{font-family:swiper-icons;font-size:var(--swiper-navigation-size);text-transform:none!important;letter-spacing:0;font-variant:initial;line-height:1}.swiper-button-prev,.swiper-rtl .swiper-button-next{left:10px;right:auto}.swiper-button-prev:after,.swiper-rtl .swiper-button-next:after{content:'prev'}.swiper-button-next,.swiper-rtl .swiper-button-prev{right:10px;left:auto}.swiper-button-next:after,.swiper-rtl .swiper-button-prev:after{content:'next'}.swiper-button-lock{display:none}.swiper-pagination{position:absolute;text-align:center;transition:.3s opacity;transform:translate3d(0,0,0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-pagination-disabled>.swiper-pagination,.swiper-pagination.swiper-pagination-disabled{display:none!important}.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:10px;left:0;width:100%}.swiper-pagination-bullets-dynamic{overflow:hidden;font-size:0}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transform:scale(.33);position:relative}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{transform:scale(.33)}.swiper-pagination-bullet{width:var(--swiper-pagination-bullet-width,var(--swiper-pagination-bullet-size,8px));height:var(--swiper-pagination-bullet-height,var(--swiper-pagination-bullet-size,8px));display:inline-block;border-radius:50%;background:var(--swiper-pagination-bullet-inactive-color,#000);opacity:var(--swiper-pagination-bullet-inactive-opacity, .2)}button.swiper-pagination-bullet{border:none;margin:0;padding:0;box-shadow:none;-webkit-appearance:none;appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-bullet:only-child{display:none!important}.swiper-pagination-bullet-active{opacity:var(--swiper-pagination-bullet-opacity, 1);background:var(--swiper-pagination-color,var(--swiper-theme-color))}.swiper-pagination-vertical.swiper-pagination-bullets,.swiper-vertical>.swiper-pagination-bullets{right:10px;top:50%;transform:translate3d(0px,-50%,0)}.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{margin:var(--swiper-pagination-bullet-vertical-gap,6px) 0;display:block}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{top:50%;transform:translateY(-50%);width:8px}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{display:inline-block;transition:.2s transform,.2s top}.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap,4px)}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{left:50%;transform:translateX(-50%);white-space:nowrap}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s left}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s right}.swiper-pagination-progressbar{background:rgba(0,0,0,.25);position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color,var(--swiper-theme-color));position:absolute;left:0;top:0;width:100%;height:100%;transform:scale(0);transform-origin:left top}.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{transform-origin:right top}.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite{width:100%;height:4px;left:0;top:0}.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-vertical>.swiper-pagination-progressbar{width:4px;height:100%;left:0;top:0}.swiper-pagination-lock{display:none}.swiper-scrollbar{border-radius:10px;position:relative;-ms-touch-action:none;background:rgba(0,0,0,.1)}.swiper-scrollbar-disabled>.swiper-scrollbar,.swiper-scrollbar.swiper-scrollbar-disabled{display:none!important}.swiper-horizontal>.swiper-scrollbar,.swiper-scrollbar.swiper-scrollbar-horizontal{position:absolute;left:1%;bottom:3px;z-index:50;height:5px;width:98%}.swiper-scrollbar.swiper-scrollbar-vertical,.swiper-vertical>.swiper-scrollbar{position:absolute;right:3px;top:1%;z-index:50;width:5px;height:98%}.swiper-scrollbar-drag{height:100%;width:100%;position:relative;background:rgba(0,0,0,.5);border-radius:10px;left:0;top:0}.swiper-scrollbar-cursor-drag{cursor:move}.swiper-scrollbar-lock{display:none}.swiper-zoom-container{width:100%;height:100%;display:flex;justify-content:center;align-items:center;text-align:center}.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{max-width:100%;max-height:100%;object-fit:contain}.swiper-slide-zoomed{cursor:move}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;transform-origin:50%;box-sizing:border-box;border:4px solid var(--swiper-preloader-color,var(--swiper-theme-color));border-radius:50%;border-top-color:transparent}.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader,.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader{animation:swiper-preloader-spin 1s infinite linear}.swiper-lazy-preloader-white{--swiper-preloader-color:#fff}.swiper-lazy-preloader-black{--swiper-preloader-color:#000}@keyframes swiper-preloader-spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.swiper .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000}.swiper-free-mode>.swiper-wrapper{transition-timing-function:ease-out;margin:0 auto}.swiper-grid>.swiper-wrapper{flex-wrap:wrap}.swiper-grid-column>.swiper-wrapper{flex-wrap:wrap;flex-direction:column}.swiper-fade.swiper-free-mode .swiper-slide{transition-timing-function:ease-out}.swiper-fade .swiper-slide{pointer-events:none;transition-property:opacity}.swiper-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-fade .swiper-slide-active,.swiper-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-cube{overflow:visible}.swiper-cube .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1;visibility:hidden;transform-origin:0 0;width:100%;height:100%}.swiper-cube .swiper-slide .swiper-slide{pointer-events:none}.swiper-cube.swiper-rtl .swiper-slide{transform-origin:100% 0}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-next,.swiper-cube .swiper-slide-next+.swiper-slide,.swiper-cube .swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-cube .swiper-slide-shadow-bottom,.swiper-cube .swiper-slide-shadow-left,.swiper-cube .swiper-slide-shadow-right,.swiper-cube .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-cube .swiper-cube-shadow{position:absolute;left:0;bottom:0px;width:100%;height:100%;opacity:.6;z-index:0}.swiper-cube .swiper-cube-shadow:before{content:'';background:#000;position:absolute;left:0;top:0;bottom:0;right:0;filter:blur(50px)}.swiper-flip{overflow:visible}.swiper-flip .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1}.swiper-flip .swiper-slide .swiper-slide{pointer-events:none}.swiper-flip .swiper-slide-active,.swiper-flip .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-flip .swiper-slide-shadow-bottom,.swiper-flip .swiper-slide-shadow-left,.swiper-flip .swiper-slide-shadow-right,.swiper-flip .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-creative .swiper-slide{-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden;transition-property:transform,opacity,height}.swiper-cards{overflow:visible}.swiper-cards .swiper-slide{transform-origin:center bottom;-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden} -------------------------------------------------------------------------------- /checkdata.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /checkedtodo.php: -------------------------------------------------------------------------------- 1 | prepare("SELECT * from todos WHERE id=?"); 6 | $sql->execute([$_GET['id']]); 7 | $todo=$sql->fetch(); 8 | 9 | $query=$pdo->prepare("UPDATE todos SET complete=:com where id=:idtodo"); 10 | $query->execute(["com" => !$todo['complete'],"idtodo"=>$_GET['id']]); 11 | header("location:./profiluser") ; 12 | 13 | ?> -------------------------------------------------------------------------------- /congrat.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | Congrats 10 | 23 | 24 | 25 |
26 |
27 |

Welcome

28 |
29 |
30 |
31 | ... 32 |

33 |
34 |
35 |
36 | 37 | 38 | 39 | 45 | 46 | -------------------------------------------------------------------------------- /db_connected/index.php: -------------------------------------------------------------------------------- 1 | getMessage(); 14 | } 15 | 16 | 17 | ?> 18 | 19 | -------------------------------------------------------------------------------- /delete_todo.php: -------------------------------------------------------------------------------- 1 | prepare("DELETE from todos where id=:id"); 12 | $sql->execute(['id'=>$_GET['id']]); 13 | 14 | header("location:./profiluser?msg=delete with success&type=success"); 15 | exit; 16 | 17 | ?> -------------------------------------------------------------------------------- /edit/edit.phtml: -------------------------------------------------------------------------------- 1 | 7 | 8 |
9 |
10 |
11 |
12 |
13 |

Update Todo :

14 |
15 | > 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 |
27 |
28 |
29 |
30 | 31 |
32 |
33 |
34 |
35 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /edit/index.php: -------------------------------------------------------------------------------- 1 | prepare("UPDATE `todos` SET `titel`=:titel,`due_date`=:date,`description`=:desc WHERE id=:id "); 13 | $sql->execute([ 14 | 'titel'=>$titel, 15 | 'date'=>$date, 16 | 'desc'=>$description, 17 | 'id'=>$id 18 | ]); 19 | header("location:../profiluser?msg=Update with success&type=success"); 20 | exit; 21 | } 22 | $sql=$pdo->prepare("SELECT * FROM todos where id=:id_todo"); 23 | $sql->execute(['id_todo'=>$_GET['id']]); 24 | $todo=$sql->fetch(); 25 | 26 | $show=null; 27 | $page_titel="Update todo"; 28 | $template="edit"; 29 | include "../layout.phtml"; 30 | 31 | 32 | ?> -------------------------------------------------------------------------------- /edituser/edituser.phtml: -------------------------------------------------------------------------------- 1 | 7 |

Personal Info

8 | 9 |
10 | 11 |
12 |
13 | 14 |
15 | 16 |
17 | 18 |
19 | 20 |
21 |
22 |
23 |
24 | 25 | Profil Photo 26 |
27 |
28 | 29 |
30 |
31 |
32 | 33 |
34 |
35 |
36 |
37 | 38 | > 39 |
40 |
41 | 42 | > 43 |
44 |
45 | 46 | > 47 |
48 |
49 | 50 | > 51 |
52 | 53 |
54 |
55 | 56 |
57 |
58 | 59 | -------------------------------------------------------------------------------- /edituser/index.php: -------------------------------------------------------------------------------- 1 | 99999999){ 19 | header("location:index.php?msg=image should be smaller"); 20 | exit; 21 | }else if(!in_array($type,$array)){ 22 | header("location:index.php?msg=upload image failed type"); 23 | exit; 24 | }else if(!move_uploaded_file($_FILES['avatar']['tmp_name'],'../storage/'.$name_file)){ 25 | header("location:index.php?msg=upload image failed"); 26 | exit; 27 | } 28 | $avatar="../storage/".$name_file; 29 | $avatarupload=true; 30 | } 31 | 32 | if($avatarupload){ 33 | $sql=$pdo->prepare("UPDATE users SET nom=:name,prenom=:prenom,avatar=:avatar,email=:email,password=:password"); 34 | $sql->execute([ 35 | 'name'=>$name, 36 | 'prenom'=>$prenom, 37 | 'avatar'=>$avatar, 38 | 'email'=>$email, 39 | 'password'=>$password 40 | ]); 41 | $_SESSION['nameuser']=$name; 42 | $_SESSION['prenomuser']=$prenom; 43 | $_SESSION['passworduser']= $password; 44 | $_SESSION['emailuser']=$email; 45 | $_SESSION['avataruser']=$avatar; 46 | header("location:../profiluser?msg=edit profil user with success"); 47 | exit; 48 | }else{ 49 | $sql=$pdo->prepare("UPDATE users SET nom=:name,prenom=:prenom,email=:email,password=:password"); 50 | $sql->execute([ 51 | 'name'=>$name, 52 | 'prenom'=>$prenom, 53 | 'email'=>$email, 54 | 'password'=>$password 55 | ]); 56 | $_SESSION['nameuser']=$name; 57 | $_SESSION['prenomuser']=$prenom; 58 | $_SESSION['passworduser']=$password; 59 | $_SESSION['emailuser']=$email; 60 | header("location:../profiluser?msg=edit profil user with success"); 61 | exit; 62 | } 63 | } 64 | 65 | $show=null; 66 | $page_titel="edit user"; 67 | $template="edituser"; 68 | include "../layout.phtml" 69 | ?> -------------------------------------------------------------------------------- /index.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /layout.phtml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | <?=$page_titel?> 22 | 23 | 24 | 25 | 26 | 27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |

Make Your Own Todo List

37 |

To be greatful

38 |

Join Us

39 |
40 |
41 | 42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 | 52 |
53 |
54 |
55 |
56 |
57 |
58 | 59 | 60 | 61 | 62 | 63 | -------------------------------------------------------------------------------- /log_out.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /login/index.php: -------------------------------------------------------------------------------- 1 | prepare("SELECT * from users where email=:email"); 20 | $query->execute(['email'=>$email]); 21 | $user=$query->fetch(PDO::FETCH_ASSOC); 22 | if($user){ 23 | if(!password_verify($password,$user['password'])){ 24 | header("location:index.php?msg=password or email is incorrect&type=danger"); 25 | }else{ 26 | $_SESSION['iduser']=$user['id']; 27 | $_SESSION['nameuser']=$user['nom']; 28 | $_SESSION['prenomuser']=$user['prenom']; 29 | $_SESSION['passworduser']=$user['password']; 30 | $_SESSION['emailuser']=$user['email']; 31 | $_SESSION['avataruser']=$user['avatar']; 32 | header("location:../profiluser");/** :) */ 33 | exit; 34 | } 35 | } else{ 36 | header("location:index.php?msg=password or email is incorrect&type=danger"); 37 | } 38 | 39 | } 40 | } 41 | $show=true; 42 | $template="login"; 43 | $page_titel="login"; 44 | include "../layout.phtml"; 45 | ?> -------------------------------------------------------------------------------- /login/login.phtml: -------------------------------------------------------------------------------- 1 | 7 | 8 |
9 |
10 |
11 |
12 | 13 |
14 |
15 |
16 |

Welcome Back !

17 |
18 |
19 | 20 |
21 | 22 |
23 | 24 |
25 | 26 |
27 |
28 | 29 |
30 | 31 |
32 |
33 |
34 | Forgot Password ? 35 |
36 | 39 |
40 |
41 |
42 |
-------------------------------------------------------------------------------- /profiluser/index.php: -------------------------------------------------------------------------------- 1 | prepare("SELECT * from todos where id=:id order by complete"); 12 | $sql->execute(['id'=>$idtdodo]); 13 | $todo_check=$sql->fetch(); 14 | $sql1=$pdo->prepare("UPDATE todos SET complete=:comp where id=:id"); 15 | $sql1->execute(['id'=>$idtdodo,'comp'=>$todo_check['complete'] ? 0 : 1]); 16 | } 17 | 18 | 19 | 20 | if(isset($_GET['check_search']) && !empty($_GET['search'])){ 21 | 22 | extract($_GET); 23 | $name_search="%".$search."%"; 24 | $sql=$pdo->prepare("SELECT * from todos where titel like :name AND id_user=:id "); 25 | $sql->execute(['id'=>$_SESSION['iduser'],'name'=>$name_search]); 26 | $alltodos=$sql->fetchall(); 27 | if(!$alltodos){ 28 | $alltodos="vide"; 29 | } 30 | 31 | }else{ 32 | 33 | $sql=$pdo->prepare("SELECT * from todos where id_user=:id"); 34 | $sql->execute(['id'=>$_SESSION['iduser']]); 35 | $alltodos=$sql->fetchall(); 36 | 37 | } 38 | 39 | 40 | 41 | $show=null; 42 | $template="profiluser"; 43 | $page_titel=$_SESSION['nameuser']; 44 | include "../layout.phtml"; 45 | ?> -------------------------------------------------------------------------------- /profiluser/profiluser.phtml: -------------------------------------------------------------------------------- 1 | 2 |
3 |
4 |
5 | 16 |
17 |
18 |
19 | 20 |
21 | 22 |
23 | 24 |
25 |
26 | > 27 | 28 |
29 |
30 | 31 | 32 |
33 | 34 |
35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 61 | 62 | 63 | 106 | 123 | 124 | 125 | 126 | 127 | 128 |
*IdTitleoperation
vide
56 |
57 | 58 | > 59 |
60 |
> 64 | 65 | 103 | 104 | 105 |
129 |
130 |
131 | -------------------------------------------------------------------------------- /send.php: -------------------------------------------------------------------------------- 1 | isSMTP(); //envoyer utilisant SMTP 15 | $mail->Host="smtp.gmail.com"; //initialization de serveur SMTP 16 | $mail->SMTPAuth=true; //activation SMTP authentification 17 | $mail->Username="bizomejri@gmail.com"; //ADRESSE SMTP 18 | $mail->Password="cxjzwcrqdlszqyax"; //Mot de passe SMTP 19 | $mail->Port=465; //Port TCP 20 | $mail->SMTPSecure="ssl"; 21 | /* Contenu De mail de ADMIN*/ 22 | $mail->isHTML(true); //Format de mail html 23 | $mail->setFrom("bizomejri@gmail.com",$name); 24 | $mail->addAddress("$email"); //Adresse reception 25 | $mail->Subject=("$subject"); //Le sujet de l'email 26 | $mail->Body=$message; 27 | if($file_name!=null){ 28 | //Le contenu de mail 29 | 30 | /** test existance de la fichier */ 31 | } 32 | /* Commande pour envoyer le mail */ 33 | if ($mail->send()) 34 | return 1; 35 | else 36 | return $mail->ErrorInfo; 37 | } 38 | ?> 39 | -------------------------------------------------------------------------------- /signup/index.php: -------------------------------------------------------------------------------- 1 | 9999999){ 61 | $error['file']="size image to large"; 62 | goto showhere; 63 | } 64 | $name_file=md5(rand()).$type_dsiponible; 65 | if(!move_uploaded_file($_FILES['avatar']['tmp_name'],'../storage/'.$name_file)){ 66 | $error['file']="upload failed"; 67 | goto showhere; 68 | } 69 | 70 | else{ 71 | $avatar='../storage/'.$name_file; 72 | $verifeid_existant=$pdo->prepare("SELECT * from users where email=:email"); 73 | $verifeid_existant->execute(['email'=>$email]); 74 | if($verifeid_existant->rowCount()>0){ 75 | header("location:index.php?msg=email already exist&type=danger"); 76 | }else{ 77 | $sql=$pdo->prepare("INSERT INTO `users`( `nom`, `prenom`, `email`, `password`, `avatar`) VALUES (:nom,:prenom,:email,:password,:avatar)"); 78 | $sql->execute([ 79 | 'nom'=>$name, 80 | 'prenom'=>$prenom, 81 | 'email'=>$email, 82 | 'password'=>password_hash($password,PASSWORD_DEFAULT), 83 | 'avatar'=>$avatar 84 | ]); 85 | header("location:../congrat.php?name=".$name."&avatar=".$name_file); 86 | } 87 | } 88 | } 89 | 90 | showhere: 91 | $show=true; 92 | $page_titel="Sign Up"; 93 | $template="signup"; 94 | include "../layout.phtml"; 95 | ?> -------------------------------------------------------------------------------- /signup/signup.phtml: -------------------------------------------------------------------------------- 1 | 2 |
3 |
4 |
5 |
6 |
7 |

Sign Up

8 |
9 |
10 | 11 | 12 |
13 | 14 |
15 | 16 |
17 |
18 | 19 | 20 | 21 |
22 |
23 | 24 | 25 | 26 |
27 |
28 |
29 |
30 | 31 | 32 | 33 |
34 |
35 | 36 |
37 | 38 | 39 | 50 | 51 |
52 | 53 |
54 |
55 |
56 |
57 | 58 | 59 | 60 |
61 |
62 |
63 | 64 | 65 |
66 |
67 | 68 |
69 |
70 | Already have an account ? Login 71 |
72 |
73 |
74 |
75 | 76 |
77 |
78 | 79 |
80 |
81 | 82 | 101 | 102 | 103 | 104 | -------------------------------------------------------------------------------- /storage/e38ea6ee058cd8fac11a95a09fd03f69Array: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TalelMejri/PHP_sem1_TP/9fb95a9821c07381c5708b9543f3e8b3f92446b7/storage/e38ea6ee058cd8fac11a95a09fd03f69Array -------------------------------------------------------------------------------- /test.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TalelMejri/PHP_sem1_TP/9fb95a9821c07381c5708b9543f3e8b3f92446b7/test.php -------------------------------------------------------------------------------- /todo_app_dsi22.sql: -------------------------------------------------------------------------------- 1 | -- phpMyAdmin SQL Dump 2 | -- version 5.1.1 3 | -- https://www.phpmyadmin.net/ 4 | -- 5 | -- Hôte : 127.0.0.1 6 | -- Généré le : mer. 12 juil. 2023 à 16:48 7 | -- Version du serveur : 10.4.22-MariaDB 8 | -- Version de PHP : 8.1.1 9 | 10 | SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; 11 | START TRANSACTION; 12 | SET time_zone = "+00:00"; 13 | 14 | 15 | /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; 16 | /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; 17 | /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; 18 | /*!40101 SET NAMES utf8mb4 */; 19 | 20 | -- 21 | -- Base de données : `todo_app_dsi22` 22 | -- 23 | 24 | -- -------------------------------------------------------- 25 | 26 | -- 27 | -- Structure de la table `todos` 28 | -- 29 | 30 | CREATE TABLE `todos` ( 31 | `id` int(10) UNSIGNED NOT NULL, 32 | `titel` varchar(40) NOT NULL, 33 | `due_date` date NOT NULL, 34 | `description` varchar(250) NOT NULL, 35 | `complete` tinyint(1) NOT NULL, 36 | `id_user` int(11) UNSIGNED NOT NULL 37 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; 38 | 39 | -- 40 | -- Déchargement des données de la table `todos` 41 | -- 42 | 43 | INSERT INTO `todos` (`id`, `titel`, `due_date`, `description`, `complete`, `id_user`) VALUES 44 | (2, 'html', '2022-05-04', 'les bases', 1, 1), 45 | (7, 'Vue jseesddsd', '2022-05-04', 'somthing speciale', 0, 4), 46 | (14, 'sdsdsdsdsd', '2002-05-04', 'sdsd', 0, 4), 47 | (16, 'Vue jsee', '2002-05-04', 'dffdfdfdf', 1, 6), 48 | (17, 'html', '2002-05-04', 'somthing speciale', 1, 6), 49 | (18, 'Vue jseesqdsdsqdsqd', '2002-05-04', 'somthing speciale', 1, 7), 50 | (19, 'css', '2022-05-26', 'dsfdsfdsfsd', 0, 7), 51 | (21, 'Vue jsee', '2022-05-04', 'sqdqsdsq', 1, 10), 52 | (22, 'html_css', '2002-06-05', 'dsqdsqd', 0, 10), 53 | (23, 'php', '2022-05-04', 'sqdsqd', 0, 11); 54 | 55 | -- -------------------------------------------------------- 56 | 57 | -- 58 | -- Structure de la table `users` 59 | -- 60 | 61 | CREATE TABLE `users` ( 62 | `id` int(11) NOT NULL, 63 | `nom` varchar(30) NOT NULL, 64 | `prenom` varchar(30) NOT NULL, 65 | `email` varchar(50) NOT NULL, 66 | `password` varchar(255) NOT NULL, 67 | `avatar` varchar(250) NOT NULL 68 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; 69 | 70 | -- 71 | -- Déchargement des données de la table `users` 72 | -- 73 | 74 | INSERT INTO `users` (`id`, `nom`, `prenom`, `email`, `password`, `avatar`) VALUES 75 | (1, 'chadwadsqdsq', 'ggdfdf', 'talel@gmail.com', '