diff --git a/.drone.yml b/.drone.yml index 4651dedf..c0b84a9c 100644 --- a/.drone.yml +++ b/.drone.yml @@ -6,10 +6,10 @@ trigger: - push steps: -#- name: start -# image: node -# commands: -# - npm install +- name: start + image: node + commands: + - npm install - name: deploy image: appleboy/drone-scp @@ -19,5 +19,9 @@ steps: username: lafourcade target: public_html/Scripted source: WEB/* - key-path: "${HOME}/toto" - + key: + from_secret: DEPLOY_KEY + secrets: + - source: DEPLOY_KEY + target: scp_key + rm: true \ No newline at end of file diff --git a/WEB/Config/Validation.php b/WEB/Config/Validation.php index 6be3beb7..16477f87 100644 --- a/WEB/Config/Validation.php +++ b/WEB/Config/Validation.php @@ -30,10 +30,10 @@ class Validation return true; } public function ValidateUsername(string $username) : bool{ - // if(!filter_var($username,FILTER_VALIDATE_REGEXP,array("options" => array( "regexp" => "^[^&=_'\-+;<>.]{1,18}$" )))) - // { - // return false; - // } + if(!filter_var($username,FILTER_VALIDATE_REGEXP,array("options" => array( "regexp" => "^[^&=_'\-+;<>.]{1,18}$" )))) + { + return false; + } return true; } public function ValidatePassword(string $password) : bool{ diff --git a/WEB/Controller/EnigmeGateway.php b/WEB/Controller/EnigmeGateway.php index 2f2eb05d..a4d543a8 100644 --- a/WEB/Controller/EnigmeGateway.php +++ b/WEB/Controller/EnigmeGateway.php @@ -1,5 +1,5 @@ con->executeQuery($query, array( ':id' => array($enigme->getIdEnigme(), PDO::PARAM_STR), ':admin' => array($enigme->getAdmin(), PDO::PARAM_STR), @@ -32,7 +32,8 @@ class EnigmeGateway ':rappel' => array($enigme->getRappel(), PDO::PARAM_STR), ':solution' => array($enigme->getSolution(), PDO::PARAM_STR), ':test' => array($enigme->getTest(), PDO::PARAM_STR), - ':tempsDeResolution' => array($enigme->getTempsDeResolution(), PDO::PARAM_INT) + ':tempsDeResolution' => array($enigme->getTempsDeResolution(), PDO::PARAM_INT), + ':points' => array($enigme->getPoints(), PDO::PARAM_INT) )); } @@ -44,19 +45,24 @@ class EnigmeGateway )); } - public function findById(string $idEnigme) + public function findById(string $idEnigme) : array { $query="SELECT * FROM Enigme WHERE idEnigme =:idEnigme"; $this->con->executequery($query,array( ':idEnigme' => array($idEnigme,PDO::PARAM_STR) )); $results=$this->con->getResults(); - $tabEnigme=array(); - foreach ($results as $row) - { - $tabEnigme[]= new Enigme(row['id'],row['admin'],row['enonce'],row['aide'],row['rappel'],row['solution'],row['test'],row['tempsDeResolution']); - } - return $tabEnigme; + $tabEnigme=EnigmeFactory::create($results); + return $tabEnigme; + } + + public function findByTempsDeResolution() : array + { + $query = "SELECT * FROM Enigme ORDER BY tempsDeResolution"; + $this->con->executequery($query); + $results = $this->con->getResults(); + $tabEnigme=EnigmeFactory::create($results); + return $tabEnigme; } public function showAll(): void @@ -72,6 +78,7 @@ class EnigmeGateway echo $row['rappel'] . '
'; echo $row['solution'] . '
'; echo $row['test'] . '
'; + echo $row['points'] . '
'; } } } diff --git a/WEB/Controller/PartieGateway.php b/WEB/Controller/PartieGateway.php index 7d35c6ff..afb471df 100644 --- a/WEB/Controller/PartieGateway.php +++ b/WEB/Controller/PartieGateway.php @@ -1,4 +1,6 @@ con = $con; } public function insert(Partie $partie){ + $query= "INSERT INTO Game VALUES (:idPartie)"; $this->con->executeQuery($query, array(':idPartie' => array($partie->getIdPartie(), PDO::PARAM_STR))); } diff --git a/WEB/Factory/EnigmeFactory.php b/WEB/Factory/EnigmeFactory.php new file mode 100644 index 00000000..b84fdcae --- /dev/null +++ b/WEB/Factory/EnigmeFactory.php @@ -0,0 +1,12 @@ +idEnigme=$idEnigme; $this->enonce=$enonce; $this->solution=$solution; @@ -37,6 +38,7 @@ class Enigme $this->aide=NULL; $this->rappel=NULL; $this->admin=$admin; + $this->points=$points; } public function __constructSolo(string $idEnigme, string $enonce, string $aide, string $rappel, string $solution, string $test,string $admin){ @@ -177,4 +179,12 @@ class Enigme { $this->tempsDeResolution = $tempsDeResolution; } + public function getPoints(): int + { + return $this->points; + } + public function setPoints(int $points): void + { + $this->points = $points; + } } \ No newline at end of file diff --git a/WEB/Model/Partie.php b/WEB/Model/Partie.php index 705b2b5b..d0113343 100644 --- a/WEB/Model/Partie.php +++ b/WEB/Model/Partie.php @@ -1,11 +1,12 @@ idPartie = $idPartie; $this->datePartie = getdate(); + $listeEnigme = []; } /** diff --git a/toto b/toto deleted file mode 100644 index 462ff663..00000000 --- a/toto +++ /dev/null @@ -1,39 +0,0 @@ ------BEGIN OPENSSH PRIVATE KEY----- -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 -AQIDBA== ------END OPENSSH PRIVATE KEY----- diff --git a/toto.pub b/toto.pub deleted file mode 100644 index 4776ff2c..00000000 --- a/toto.pub +++ /dev/null @@ -1 +0,0 @@ -ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC5ynx/b7N6uC87E6lpmGayNOU5F8NmPn7kWykeI82ucJQt2t1dvqdwQUZEOB8DG1ylhsTKZUgfV1ng6BxSkyHBUMtWbcgNPR55w9fAHg2F4W9EabID1qfMkA4RWviVkwDQuyeONWsjLPLhZ4U+j+Pc6owZmKuTh+fkhPyqfJ8Z7nzXd33b79OnlO3neBW7eaSvH9Dc0bWqOGFhAWQjQ6Ayg+lXpeJDuzfRGFbxAoxoG0Xoc/RQZR0Z3+NVAZk3agPFteptz/TI1hX6YiBGeiawceYa2U1pPCgGHVdJF+ZPRHii25D0Q6tngWd+5YhSEtosdNafTrupHq7qzH4a5rubPxm65V+QQfVSlshwzmuCeQa7XJW5Op3MwrAocFyZvre3f73d/oygcKythp5UwQzB3q6/XAwKv48+In+ABBNB1nUTjA+4NGwYitx5+rXkLf86f2QRyrGD62Golh8c/QxJgAtNCyapEj1CQGJ0MQvvVlhfFcIxpTjeDby8KGBUNks= palafour@iMac-de-Pascal.local.isima.fr