Open only one DB connection per PHP call
This commit is contained in:
parent
e270333055
commit
7fc7a002e3
6 changed files with 34 additions and 84 deletions
|
|
@ -4,7 +4,7 @@ if(!defined('ONYX')) exit;
|
||||||
|
|
||||||
function remove_themes($id)
|
function remove_themes($id)
|
||||||
{
|
{
|
||||||
$db = new BDD();
|
global $db;
|
||||||
$res = $db->query("SELECT id FROM exercices WHERE id_theme = ".$id);
|
$res = $db->query("SELECT id FROM exercices WHERE id_theme = ".$id);
|
||||||
foreach($res as $r)
|
foreach($res as $r)
|
||||||
{
|
{
|
||||||
|
|
@ -17,7 +17,6 @@ function remove_themes($id)
|
||||||
|
|
||||||
$db->query("DELETE FROM exercices WHERE id_theme = ".$id);
|
$db->query("DELETE FROM exercices WHERE id_theme = ".$id);
|
||||||
$db->query("DELETE FROM themes WHERE id = ".$id);
|
$db->query("DELETE FROM themes WHERE id = ".$id);
|
||||||
$db->deconnexion();
|
|
||||||
|
|
||||||
Cache::del("ordered_th".$id);
|
Cache::del("ordered_th".$id);
|
||||||
}
|
}
|
||||||
|
|
@ -33,14 +32,13 @@ if (!empty($_GET["delete"]))
|
||||||
}
|
}
|
||||||
else if (isset($_GET["drop"]))
|
else if (isset($_GET["drop"]))
|
||||||
{
|
{
|
||||||
$db = new BDD();
|
global $db;
|
||||||
$db->query("TRUNCATE exercice_files");
|
$db->query("TRUNCATE exercice_files");
|
||||||
$db->query("TRUNCATE exercice_keys");
|
$db->query("TRUNCATE exercice_keys");
|
||||||
$db->query("TRUNCATE exercice_tries");
|
$db->query("TRUNCATE exercice_tries");
|
||||||
$db->query("TRUNCATE exercices");
|
$db->query("TRUNCATE exercices");
|
||||||
$db->query("TRUNCATE themes");
|
$db->query("TRUNCATE themes");
|
||||||
$db->query("TRUNCATE solved");
|
$db->query("TRUNCATE solved");
|
||||||
$db->deconnexion();
|
|
||||||
|
|
||||||
header("Location: /".SALT_ADMIN."/themes");
|
header("Location: /".SALT_ADMIN."/themes");
|
||||||
exit;
|
exit;
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,6 @@
|
||||||
<?php
|
<?php
|
||||||
if(!defined('ONYX')) exit;
|
if(!defined('ONYX')) exit;
|
||||||
|
|
||||||
if (empty($sess->values["connected"]) && !defined("xCSRF"))
|
|
||||||
define("xCSRF", true);
|
|
||||||
|
|
||||||
// Enable debugging in development environment
|
// Enable debugging in development environment
|
||||||
if (!empty($VAR["development"]))
|
if (!empty($VAR["development"]))
|
||||||
define("DEBUG", true);
|
define("DEBUG", true);
|
||||||
|
|
@ -30,3 +27,5 @@ if (!empty($VAR['misc_dir']))
|
||||||
$template->assign("MISC_DIR", $VAR['misc_dir']);
|
$template->assign("MISC_DIR", $VAR['misc_dir']);
|
||||||
if (!empty($LANG))
|
if (!empty($LANG))
|
||||||
$template->assign("LANG", $LANG);
|
$template->assign("LANG", $LANG);
|
||||||
|
|
||||||
|
$db = new BDD();
|
||||||
|
|
|
||||||
|
|
@ -21,7 +21,7 @@ class Exercice
|
||||||
|
|
||||||
if (!empty($id))
|
if (!empty($id))
|
||||||
{
|
{
|
||||||
$db = new BDD();
|
global $db;
|
||||||
|
|
||||||
$db->escape($id);
|
$db->escape($id);
|
||||||
$res = $db->unique_query("SELECT `id`, `id_theme`, `require`, `level`,
|
$res = $db->unique_query("SELECT `id`, `id_theme`, `require`, `level`,
|
||||||
|
|
@ -49,8 +49,6 @@ class Exercice
|
||||||
FROM exercice_keys
|
FROM exercice_keys
|
||||||
WHERE id_exercice = '$id'");
|
WHERE id_exercice = '$id'");
|
||||||
|
|
||||||
$db->deconnexion();
|
|
||||||
|
|
||||||
if (!empty($theme))
|
if (!empty($theme))
|
||||||
{
|
{
|
||||||
if ($res['id_theme'] == $theme->get_id())
|
if ($res['id_theme'] == $theme->get_id())
|
||||||
|
|
@ -72,7 +70,6 @@ class Exercice
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$db->deconnexion();
|
|
||||||
throw new ExerciceNotFoundException();
|
throw new ExerciceNotFoundException();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -119,14 +116,12 @@ class Exercice
|
||||||
{
|
{
|
||||||
$id = $this->id;
|
$id = $this->id;
|
||||||
|
|
||||||
$db = new BDD();
|
global $db;
|
||||||
$db->escape($id);
|
$db->escape($id);
|
||||||
$res = $db->query("SELECT `id_team`, `time` FROM solved
|
$res = $db->query("SELECT `id_team`, `time` FROM solved
|
||||||
WHERE id_exercice = '$id'
|
WHERE id_exercice = '$id'
|
||||||
ORDER BY time");
|
ORDER BY time");
|
||||||
|
|
||||||
$db->deconnexion();
|
|
||||||
|
|
||||||
return $res;
|
return $res;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -137,12 +132,11 @@ class Exercice
|
||||||
|
|
||||||
$req = $this->require;
|
$req = $this->require;
|
||||||
|
|
||||||
$db = new BDD();
|
global $db;
|
||||||
$db->escape($req);
|
$db->escape($req);
|
||||||
$res = $db->unique_query("SELECT `id` FROM solved
|
$res = $db->unique_query("SELECT `id` FROM solved
|
||||||
WHERE id_team = '".intval($team->id)."'
|
WHERE id_team = '".intval($team->id)."'
|
||||||
AND id_exercice = '$req'");
|
AND id_exercice = '$req'");
|
||||||
$db->deconnexion();
|
|
||||||
if (empty($res))
|
if (empty($res))
|
||||||
return 0;
|
return 0;
|
||||||
return 1;
|
return 1;
|
||||||
|
|
@ -152,13 +146,11 @@ class Exercice
|
||||||
{
|
{
|
||||||
$id = $this->id;
|
$id = $this->id;
|
||||||
|
|
||||||
$db = new BDD();
|
global $db;
|
||||||
$db->escape($id);
|
$db->escape($id);
|
||||||
$res = $db->unique_query("SELECT `time` FROM solved WHERE id_exercice = '$id'
|
$res = $db->unique_query("SELECT `time` FROM solved WHERE id_exercice = '$id'
|
||||||
AND id_team = ".intval($team->get_id()));
|
AND id_team = ".intval($team->get_id()));
|
||||||
|
|
||||||
$db->deconnexion();
|
|
||||||
|
|
||||||
return $res["time"];
|
return $res["time"];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -166,13 +158,11 @@ class Exercice
|
||||||
{
|
{
|
||||||
$id = $this->id;
|
$id = $this->id;
|
||||||
|
|
||||||
$db = new BDD();
|
global $db;
|
||||||
$db->escape($id);
|
$db->escape($id);
|
||||||
$res = $db->unique_query("SELECT `time` FROM exercice_tries WHERE id_exercice = '$id'
|
$res = $db->unique_query("SELECT `time` FROM exercice_tries WHERE id_exercice = '$id'
|
||||||
AND id_team = ".intval($team->get_id())." ORDER BY time DESC LIMIT 1");
|
AND id_team = ".intval($team->get_id())." ORDER BY time DESC LIMIT 1");
|
||||||
|
|
||||||
$db->deconnexion();
|
|
||||||
|
|
||||||
if (!empty($res))
|
if (!empty($res))
|
||||||
return $res["time"];
|
return $res["time"];
|
||||||
else
|
else
|
||||||
|
|
@ -185,7 +175,7 @@ class Exercice
|
||||||
$this->number = 1;
|
$this->number = 1;
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$db = new BDD();
|
global $db;
|
||||||
|
|
||||||
$exo = $this->id;
|
$exo = $this->id;
|
||||||
$ret = 0;
|
$ret = 0;
|
||||||
|
|
@ -202,8 +192,6 @@ class Exercice
|
||||||
} while ($exo != "" && !in_array($exo, $checked));
|
} while ($exo != "" && !in_array($exo, $checked));
|
||||||
|
|
||||||
$this->number = $ret;
|
$this->number = $ret;
|
||||||
|
|
||||||
$db->deconnexion();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -219,7 +207,7 @@ class Exercice
|
||||||
$files = $this->files;
|
$files = $this->files;
|
||||||
$keys = $this->keys;
|
$keys = $this->keys;
|
||||||
|
|
||||||
$db = new BDD();
|
global $db;
|
||||||
$db->escape($id);
|
$db->escape($id);
|
||||||
$db->escape($theme);
|
$db->escape($theme);
|
||||||
$db->escape($require);
|
$db->escape($require);
|
||||||
|
|
@ -298,8 +286,6 @@ class Exercice
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$db->deconnexion();
|
|
||||||
|
|
||||||
//FIXME
|
//FIXME
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
@ -313,10 +299,9 @@ class Exercice
|
||||||
{
|
{
|
||||||
$id = $this->id;
|
$id = $this->id;
|
||||||
|
|
||||||
$db = new BDD();
|
global $db;
|
||||||
$db->escape($id);
|
$db->escape($id);
|
||||||
$db->query("DELETE FROM exercice_keys WHERE id_exercice = '$id'");
|
$db->query("DELETE FROM exercice_keys WHERE id_exercice = '$id'");
|
||||||
$db->deconnexion();
|
|
||||||
|
|
||||||
$this->keys = array();
|
$this->keys = array();
|
||||||
}
|
}
|
||||||
|
|
@ -347,19 +332,17 @@ class Exercice
|
||||||
|
|
||||||
public static function get_nb_exo_max()
|
public static function get_nb_exo_max()
|
||||||
{
|
{
|
||||||
$db = new BDD();
|
global $db;
|
||||||
$res = $db->unique_query("SELECT count(id) AS max FROM exercices
|
$res = $db->unique_query("SELECT count(id) AS max FROM exercices
|
||||||
GROUP BY id_theme
|
GROUP BY id_theme
|
||||||
ORDER BY max DESC
|
ORDER BY max DESC
|
||||||
LIMIT 1");
|
LIMIT 1");
|
||||||
$db->deconnexion();
|
|
||||||
|
|
||||||
return $res['max'];
|
return $res['max'];
|
||||||
}
|
}
|
||||||
|
|
||||||
public function first_to_solve_exercice()
|
public function first_to_solve_exercice()
|
||||||
{
|
{
|
||||||
$db = new BDD();
|
global $db;
|
||||||
|
|
||||||
$id = $this->id;
|
$id = $this->id;
|
||||||
$db->escape($id);
|
$db->escape($id);
|
||||||
|
|
@ -373,8 +356,6 @@ class Exercice
|
||||||
) AS t2
|
) AS t2
|
||||||
INNER JOIN teams AS t3 ON t1.id_team = t3.id
|
INNER JOIN teams AS t3 ON t1.id_team = t3.id
|
||||||
WHERE t1.time = t2.minTime");
|
WHERE t1.time = t2.minTime");
|
||||||
$db->deconnexion();
|
|
||||||
|
|
||||||
return $res['result'];
|
return $res['result'];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -15,11 +15,9 @@ class Member
|
||||||
{
|
{
|
||||||
if (!empty($id))
|
if (!empty($id))
|
||||||
{
|
{
|
||||||
$db = new BDD();
|
global $db;
|
||||||
$res = $db->unique_query("SELECT id, id_team, firstname, lastname, nickname, company
|
$res = $db->unique_query("SELECT id, id_team, firstname, lastname, nickname, company
|
||||||
FROM team_members WHERE id=" . intval($id)) or die($db->erreur());
|
FROM team_members WHERE id=" . intval($id)) or die($db->erreur());
|
||||||
$db->deconnexion();
|
|
||||||
|
|
||||||
if (!empty($res))
|
if (!empty($res))
|
||||||
{
|
{
|
||||||
$this->id = $res['id'];
|
$this->id = $res['id'];
|
||||||
|
|
@ -47,7 +45,7 @@ class Member
|
||||||
else
|
else
|
||||||
$id_team = $this->team->id;
|
$id_team = $this->team->id;
|
||||||
|
|
||||||
$db = new BDD();
|
global $db;
|
||||||
$db->escape($firstname);
|
$db->escape($firstname);
|
||||||
$db->escape($lastname);
|
$db->escape($lastname);
|
||||||
$db->escape($nickname);
|
$db->escape($nickname);
|
||||||
|
|
@ -67,7 +65,6 @@ class Member
|
||||||
WHERE id = ".intval($this->id));
|
WHERE id = ".intval($this->id));
|
||||||
$aff = $db->affected();
|
$aff = $db->affected();
|
||||||
}
|
}
|
||||||
$db->deconnexion();
|
|
||||||
|
|
||||||
return ($aff == 1);
|
return ($aff == 1);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@ if(!defined('ONYX')) exit;
|
||||||
function cmp_team_pts($i1, $i2)
|
function cmp_team_pts($i1, $i2)
|
||||||
{
|
{
|
||||||
if ($i1->get_pts() == $i2->get_pts()){
|
if ($i1->get_pts() == $i2->get_pts()){
|
||||||
$db = new BDD();
|
global $db;
|
||||||
|
|
||||||
$timestampi1 = $db->unique_query("SELECT MAX(s.time) AS maxTime
|
$timestampi1 = $db->unique_query("SELECT MAX(s.time) AS maxTime
|
||||||
FROM solved AS s
|
FROM solved AS s
|
||||||
|
|
@ -13,7 +13,6 @@ function cmp_team_pts($i1, $i2)
|
||||||
$timestampi2 = $db->unique_query("SELECT MAX(s.time) AS maxTime
|
$timestampi2 = $db->unique_query("SELECT MAX(s.time) AS maxTime
|
||||||
FROM solved AS s
|
FROM solved AS s
|
||||||
WHERE s.id_team = ".$i2->get_id());
|
WHERE s.id_team = ".$i2->get_id());
|
||||||
$db->deconnexion();
|
|
||||||
|
|
||||||
if (strtotime($timestampi1['maxTime']) > strtotime($timestampi2['maxTime']))
|
if (strtotime($timestampi1['maxTime']) > strtotime($timestampi2['maxTime']))
|
||||||
return 1;
|
return 1;
|
||||||
|
|
@ -41,7 +40,7 @@ class Team
|
||||||
{
|
{
|
||||||
if (!empty($id))
|
if (!empty($id))
|
||||||
{
|
{
|
||||||
$db = new BDD();
|
global $db;
|
||||||
$res = $db->unique_query("SELECT `id`, `team_name`, `key_hash`, `slogan`,
|
$res = $db->unique_query("SELECT `id`, `team_name`, `key_hash`, `slogan`,
|
||||||
`auth_level`, `revoked`
|
`auth_level`, `revoked`
|
||||||
FROM teams WHERE id = ".intval($id)) or die($db->erreur());
|
FROM teams WHERE id = ".intval($id)) or die($db->erreur());
|
||||||
|
|
@ -55,7 +54,6 @@ class Team
|
||||||
$this->auth_level = $res['auth_level'];
|
$this->auth_level = $res['auth_level'];
|
||||||
$this->revoked = $res['revoked'];
|
$this->revoked = $res['revoked'];
|
||||||
}
|
}
|
||||||
$db->deconnexion();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -84,7 +82,7 @@ class Team
|
||||||
$team_name = $this->team_name;
|
$team_name = $this->team_name;
|
||||||
$revoked = $this->revoked;
|
$revoked = $this->revoked;
|
||||||
|
|
||||||
$db = new BDD();
|
global $db;
|
||||||
$db->escape($key_hash);
|
$db->escape($key_hash);
|
||||||
$db->escape($slogan);
|
$db->escape($slogan);
|
||||||
$db->escape($team_name);
|
$db->escape($team_name);
|
||||||
|
|
@ -106,7 +104,6 @@ class Team
|
||||||
WHERE id = ".intval($this->id));
|
WHERE id = ".intval($this->id));
|
||||||
$aff = $db->affected();
|
$aff = $db->affected();
|
||||||
}
|
}
|
||||||
$db->deconnexion();
|
|
||||||
|
|
||||||
return ($aff == 1);
|
return ($aff == 1);
|
||||||
}
|
}
|
||||||
|
|
@ -114,13 +111,12 @@ class Team
|
||||||
// TODO: Drop members ?
|
// TODO: Drop members ?
|
||||||
function drop()
|
function drop()
|
||||||
{
|
{
|
||||||
$db = new BDD();
|
global $db;
|
||||||
if (!empty($this->id))
|
if (!empty($this->id))
|
||||||
$db->query("DELETE FROM teams WHERE id = ".intval($this->id));
|
$db->query("DELETE FROM teams WHERE id = ".intval($this->id));
|
||||||
$aff = $db->affected();
|
$aff = $db->affected();
|
||||||
if ($aff == 1)
|
if ($aff == 1)
|
||||||
$this->id = 0;
|
$this->id = 0;
|
||||||
$db->deconnexion();
|
|
||||||
return $aff;
|
return $aff;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -152,13 +148,11 @@ class Team
|
||||||
{
|
{
|
||||||
if(count($this->members) == 0)
|
if(count($this->members) == 0)
|
||||||
{
|
{
|
||||||
$db = new BDD();
|
global $db;
|
||||||
|
|
||||||
$res = $db->query("SELECT `id` FROM team_members
|
$res = $db->query("SELECT `id` FROM team_members
|
||||||
WHERE id_team = ".intval($this->id));
|
WHERE id_team = ".intval($this->id));
|
||||||
|
|
||||||
$db->deconnexion();
|
|
||||||
|
|
||||||
foreach($res as $member)
|
foreach($res as $member)
|
||||||
$this->members[] = new Member($member["id"], $this);
|
$this->members[] = new Member($member["id"], $this);
|
||||||
}
|
}
|
||||||
|
|
@ -170,7 +164,7 @@ class Team
|
||||||
{
|
{
|
||||||
if(!isset($this->points))
|
if(!isset($this->points))
|
||||||
{
|
{
|
||||||
$db = new BDD();
|
global $db;
|
||||||
|
|
||||||
$res = $db->unique_query("SELECT E.id, S.id_team, SUM(E.points) as sum_points
|
$res = $db->unique_query("SELECT E.id, S.id_team, SUM(E.points) as sum_points
|
||||||
FROM exercices E
|
FROM exercices E
|
||||||
|
|
@ -178,8 +172,6 @@ class Team
|
||||||
WHERE S.id_team = ".$this->id."
|
WHERE S.id_team = ".$this->id."
|
||||||
GROUP BY S.id_team");
|
GROUP BY S.id_team");
|
||||||
|
|
||||||
$db->deconnexion();
|
|
||||||
|
|
||||||
if (!empty($res))
|
if (!empty($res))
|
||||||
$this->points = $res['sum_points'];
|
$this->points = $res['sum_points'];
|
||||||
else
|
else
|
||||||
|
|
@ -191,10 +183,9 @@ class Team
|
||||||
|
|
||||||
function get_group_ids()
|
function get_group_ids()
|
||||||
{
|
{
|
||||||
$db = new BDD();
|
global $db;
|
||||||
|
|
||||||
$res = $db->query("SELECT `id` FROM `users`");
|
$res = $db->query("SELECT `id` FROM `users`");
|
||||||
$db->deconnexion();
|
|
||||||
|
|
||||||
return $res['id'];
|
return $res['id'];
|
||||||
}
|
}
|
||||||
|
|
@ -213,13 +204,12 @@ class Team
|
||||||
|
|
||||||
function get_nb_res_exercises_by_theme($id_theme)
|
function get_nb_res_exercises_by_theme($id_theme)
|
||||||
{
|
{
|
||||||
$db = new BDD();
|
global $db;
|
||||||
$res = $db->unique_query("SELECT E.id_theme AS theme, count(S.id) AS solved
|
$res = $db->unique_query("SELECT E.id_theme AS theme, count(S.id) AS solved
|
||||||
FROM solved S
|
FROM solved S
|
||||||
RIGHT OUTER JOIN exercices E ON E.id = S.id_exercice
|
RIGHT OUTER JOIN exercices E ON E.id = S.id_exercice
|
||||||
AND S.id_team = ".$this->id."
|
AND S.id_team = ".$this->id."
|
||||||
AND E.id_theme = ".$id_theme);
|
AND E.id_theme = ".$id_theme);
|
||||||
$db->deconnexion();
|
|
||||||
|
|
||||||
return $res['solved'];
|
return $res['solved'];
|
||||||
}
|
}
|
||||||
|
|
@ -228,12 +218,11 @@ class Team
|
||||||
{
|
{
|
||||||
if ($id_theme != -1)
|
if ($id_theme != -1)
|
||||||
{
|
{
|
||||||
$db = new BDD();
|
global $db;
|
||||||
$ids = $db->query("SELECT `id_theme`, `id_exercice`
|
$ids = $db->query("SELECT `id_theme`, `id_exercice`
|
||||||
FROM solved S
|
FROM solved S
|
||||||
LEFT OUTER JOIN exercices E ON S.id_exercice = E.id
|
LEFT OUTER JOIN exercices E ON S.id_exercice = E.id
|
||||||
WHERE id_team =".$this->id." AND id_theme =".$id_theme);
|
WHERE id_team =".$this->id." AND id_theme =".$id_theme);
|
||||||
$db->deconnexion();
|
|
||||||
|
|
||||||
$array = array();
|
$array = array();
|
||||||
$i = 0;
|
$i = 0;
|
||||||
|
|
@ -251,28 +240,25 @@ class Team
|
||||||
// Static methods
|
// Static methods
|
||||||
public static function set_revoked($bool, $name)
|
public static function set_revoked($bool, $name)
|
||||||
{
|
{
|
||||||
$db = new BDD();
|
global $db;
|
||||||
$db->query("UPDATE teams SET revoked = ".intval($bool)." WHERE team_name = '".$name."'");
|
$db->query("UPDATE teams SET revoked = ".intval($bool)." WHERE team_name = '".$name."'");
|
||||||
$aff = $db->affected();
|
$aff = $db->affected();
|
||||||
$db->deconnexion();
|
|
||||||
|
|
||||||
return ($aff == 1);
|
return ($aff == 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static function remove_team($id)
|
public static function remove_team($id)
|
||||||
{
|
{
|
||||||
$db = new BDD();
|
global $db;
|
||||||
$db->query("DELETE FROM team_members WHERE id_team = ".$id);
|
$db->query("DELETE FROM team_members WHERE id_team = ".$id);
|
||||||
$db->query("DELETE FROM solved WHERE id_team = ".$id);
|
$db->query("DELETE FROM solved WHERE id_team = ".$id);
|
||||||
$db->query("DELETE FROM teams WHERE id = ".$id);
|
$db->query("DELETE FROM teams WHERE id = ".$id);
|
||||||
$db->deconnexion();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static function get_teams()
|
public static function get_teams()
|
||||||
{
|
{
|
||||||
$db = new BDD();
|
global $db;
|
||||||
$ids = $db->query("SELECT `id` FROM `teams`");
|
$ids = $db->query("SELECT `id` FROM `teams`");
|
||||||
$db->deconnexion();
|
|
||||||
|
|
||||||
$array = array();
|
$array = array();
|
||||||
if ($ids)
|
if ($ids)
|
||||||
|
|
@ -302,9 +288,8 @@ class Team
|
||||||
|
|
||||||
public static function get_nb_teams()
|
public static function get_nb_teams()
|
||||||
{
|
{
|
||||||
$db = new BDD();
|
global $db;
|
||||||
$res = $db->unique_query("SELECT COUNT(id) as count_teams FROM teams");
|
$res = $db->unique_query("SELECT COUNT(id) as count_teams FROM teams");
|
||||||
$db->deconnexion();
|
|
||||||
|
|
||||||
return $res['count_teams'];
|
return $res['count_teams'];
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,7 @@ class Theme
|
||||||
{
|
{
|
||||||
if (!empty($id))
|
if (!empty($id))
|
||||||
{
|
{
|
||||||
$db = new BDD();
|
global $db;
|
||||||
$res = $db->unique_query("SELECT `id`, `name`
|
$res = $db->unique_query("SELECT `id`, `name`
|
||||||
FROM themes WHERE id=" . intval($id));
|
FROM themes WHERE id=" . intval($id));
|
||||||
|
|
||||||
|
|
@ -21,11 +21,7 @@ class Theme
|
||||||
$this->name = $res['name'];
|
$this->name = $res['name'];
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
|
||||||
$db->deconnexion();
|
|
||||||
throw new ThemeNotFoundException();
|
throw new ThemeNotFoundException();
|
||||||
}
|
|
||||||
$db->deconnexion();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -43,7 +39,7 @@ class Theme
|
||||||
{
|
{
|
||||||
$name = $this->name;
|
$name = $this->name;
|
||||||
|
|
||||||
$db = new BDD();
|
global $db;
|
||||||
$db->escape($name);
|
$db->escape($name);
|
||||||
|
|
||||||
if (empty($this->id))
|
if (empty($this->id))
|
||||||
|
|
@ -60,7 +56,6 @@ class Theme
|
||||||
WHERE id = ".intval($this->id));
|
WHERE id = ".intval($this->id));
|
||||||
$aff = $db->affected();
|
$aff = $db->affected();
|
||||||
}
|
}
|
||||||
$db->deconnexion();
|
|
||||||
|
|
||||||
Cache::del("ordered_th".$this->id);
|
Cache::del("ordered_th".$this->id);
|
||||||
|
|
||||||
|
|
@ -84,11 +79,10 @@ class Theme
|
||||||
|
|
||||||
function get_nb_exercices()
|
function get_nb_exercices()
|
||||||
{
|
{
|
||||||
$db = new BDD();
|
global $db;
|
||||||
$res = $db->unique_query("SELECT count(id) as nb_exercices FROM exercices
|
$res = $db->unique_query("SELECT count(id) as nb_exercices FROM exercices
|
||||||
WHERE id_theme = ".$this->id."
|
WHERE id_theme = ".$this->id."
|
||||||
GROUP BY id_theme");
|
GROUP BY id_theme");
|
||||||
$db->deconnexion();
|
|
||||||
|
|
||||||
return $res['nb_exercices'];
|
return $res['nb_exercices'];
|
||||||
}
|
}
|
||||||
|
|
@ -109,13 +103,11 @@ class Theme
|
||||||
if (!empty($res))
|
if (!empty($res))
|
||||||
return $res;
|
return $res;
|
||||||
|
|
||||||
$db = new BDD();
|
global $db;
|
||||||
$res = $db->query("SELECT E.id, E.require FROM exercices E
|
$res = $db->query("SELECT E.id, E.require FROM exercices E
|
||||||
INNER JOIN themes T ON T.id = E.id_theme
|
INNER JOIN themes T ON T.id = E.id_theme
|
||||||
WHERE T.id = ".intval($this->id));
|
WHERE T.id = ".intval($this->id));
|
||||||
|
|
||||||
$db->deconnexion();
|
|
||||||
|
|
||||||
$size = count($res);
|
$size = count($res);
|
||||||
|
|
||||||
for ($i = 0; $i < $size; $i++)
|
for ($i = 0; $i < $size; $i++)
|
||||||
|
|
@ -152,9 +144,8 @@ class Theme
|
||||||
|
|
||||||
public static function get_themes()
|
public static function get_themes()
|
||||||
{
|
{
|
||||||
$db = new BDD();
|
global $db;
|
||||||
$ids = $db->query("SELECT `id` FROM `themes` ORDER BY `name`");
|
$ids = $db->query("SELECT `id` FROM `themes` ORDER BY `name`");
|
||||||
$db->deconnexion();
|
|
||||||
|
|
||||||
$array = array();
|
$array = array();
|
||||||
if ($ids)
|
if ($ids)
|
||||||
|
|
@ -168,4 +159,3 @@ class Theme
|
||||||
class ThemeNotFoundException extends Exception
|
class ThemeNotFoundException extends Exception
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Reference in a new issue