|
|
@@ -149,19 +149,19 @@
|
|
|
if (isset($_GET["rune_min_level"]) && intval($_GET["rune_min_level"]) >= 0 && intval($_GET["rune_min_level"]) <= 15){
|
|
|
$this->filters["rune_min_level"] = $_GET["rune_min_level"];
|
|
|
}
|
|
|
- if (isset($_GET["rune_max_level"]) && intval($_GET["max_level"]) >= 0 && intval($_GET["rune_max_level"]) <= 15){
|
|
|
+ if (isset($_GET["rune_max_level"]) && intval($_GET["rune_max_level"]) >= 0 && intval($_GET["rune_max_level"]) <= 15){
|
|
|
$this->filters["rune_max_level"] = $_GET["rune_max_level"];
|
|
|
}
|
|
|
- if (isset($_GET["rune_min_quality"]) && intval($_GET["rune_min_quality"]) >= 0 && intval($_GET["rune_min_quality"]) < 5){
|
|
|
+ if (isset($_GET["rune_min_quality"]) && intval($_GET["rune_min_quality"]) >= $QUALITY["NORMAL"] && intval($_GET["rune_min_quality"]) <= $QUALITY["LEGEND"]){
|
|
|
$this->filters["rune_min_quality"] = $_GET["rune_min_quality"];
|
|
|
}
|
|
|
- if (isset($_GET["rune_max_quality"]) && intval($_GET["rune_max_quality"]) >= 0 && intval($_GET["rune_max_quality"]) < 5){
|
|
|
+ if (isset($_GET["rune_max_quality"]) && intval($_GET["rune_max_quality"]) >= $QUALITY["NORMAL"] && intval($_GET["rune_max_quality"]) <= $QUALITY["LEGEND"]){
|
|
|
$this->filters["rune_max_quality"] = $_GET["rune_max_quality"];
|
|
|
}
|
|
|
- if (isset($_GET["rune_min_original_quality"]) && intval($_GET["rune_min_original_quality"]) >= 0 && intval($_GET["rune_min_original_quality"]) < 5){
|
|
|
+ if (isset($_GET["rune_min_original_quality"]) && intval($_GET["rune_min_original_quality"]) >= $QUALITY["NORMAL"] && intval($_GET["rune_min_original_quality"]) <= $QUALITY["LEGEND"]){
|
|
|
$this->filters["rune_min_original_quality"] = $_GET["rune_min_original_quality"];
|
|
|
}
|
|
|
- if (isset($_GET["rune_max_original_quality"]) && intval($_GET["rune_max_original_quality"]) >= 0 && intval($_GET["rune_max_original_quality"]) < 5){
|
|
|
+ if (isset($_GET["rune_max_original_quality"]) && intval($_GET["rune_max_original_quality"]) >= $QUALITY["NORMAL"] && intval($_GET["rune_max_original_quality"]) <= $QUALITY["LEGEND"]){
|
|
|
$this->filters["rune_max_original_quality"] = $_GET["rune_max_original_quality"];
|
|
|
}
|
|
|
if (isset($_GET["rune_min_efficiency"]) && intval($_GET["rune_min_efficiency"]) >= 0 && intval($_GET["rune_min_efficiency"]) <= 100){
|
|
|
@@ -191,10 +191,10 @@
|
|
|
if (isset($_GET["alternative_min_level"]) && intval($_GET["alternative_min_level"]) >= 0 && intval($_GET["alternative_min_level"]) <= 15){
|
|
|
$this->filters["alternative_min_level"] = $_GET["alternative_min_level"];
|
|
|
}
|
|
|
- if (isset($_GET["alternative_min_original_quality"]) && intval($_GET["alternative_min_original_quality"]) >= 0 && intval($_GET["alternative_min_original_quality"]) < 5){
|
|
|
+ if (isset($_GET["alternative_min_original_quality"]) && intval($_GET["alternative_min_original_quality"]) >= $QUALITY["NORMAL"] && intval($_GET["alternative_min_original_quality"]) <= $QUALITY["LEGEND"]){
|
|
|
$this->filters["alternative_min_original_quality"] = $_GET["alternative_min_original_quality"];
|
|
|
}
|
|
|
- if (isset($_GET["alternative_condition"]) && intval($_GET["alternative_condition"]) >= 0 && intval($_GET["alternative_condition"]) <= 5){
|
|
|
+ if (isset($_GET["alternative_condition"]) && intval($_GET["alternative_condition"]) >= 0 && intval($_GET["alternative_condition"]) <= $QUALITY["LEGEND"]){
|
|
|
$this->filters["alternative_condition"] = $_GET["alternative_condition"];
|
|
|
}
|
|
|
if (isset($_GET["alternative_source"]) && intval($_GET["alternative_source"]) >= 0 && intval($_GET["alternative_source"]) <= 2){
|
|
|
@@ -209,49 +209,51 @@
|
|
|
* @return The query to be executed.
|
|
|
*/
|
|
|
private function build_query(){
|
|
|
- $s =
|
|
|
- "SELECT " .
|
|
|
- " unit.id AS unit, " .
|
|
|
- " rune.id AS id, " .
|
|
|
- " rune_alt.id AS alternative " .
|
|
|
- "FROM " .
|
|
|
- " rune, " .
|
|
|
- " rune rune_alt, " .
|
|
|
- " unit, " .
|
|
|
- " k_unit " .
|
|
|
- "WHERE " .
|
|
|
- " unit.id = rune.assigned_to AND " .
|
|
|
- " unit.unit = k_unit.id AND " .
|
|
|
- " unit.stars >= " . $this->filters["monster_min_stars"] . " AND " .
|
|
|
- " unit.stars <= " . $this->filters["monster_max_stars"] . " AND " .
|
|
|
- " rune.stars >= " . $this->filters["rune_min_stars"] . " AND " .
|
|
|
- " rune.stars <= " . $this->filters["rune_max_stars"] . " AND " .
|
|
|
- " rune.level >= " . $this->filters["rune_min_level"] . " AND " .
|
|
|
- " rune.level <= " . $this->filters["rune_max_level"] . " AND " .
|
|
|
- " rune.quality >= " . $this->filters["rune_min_quality"] . " AND " .
|
|
|
- " rune.quality <= " . $this->filters["rune_max_quality"] . " AND " .
|
|
|
- " rune.original_quality >= " . $this->filters["rune_min_original_quality"] . " AND " .
|
|
|
- " rune.original_quality <= " . $this->filters["rune_max_original_quality"] . " AND " .
|
|
|
- " rune.efficiency >= " . $this->filters["rune_min_efficiency"] . " AND " .
|
|
|
- " rune.efficiency <= " . $this->filters["rune_max_efficiency"] . " AND " .
|
|
|
- " rune.max_efficiency >= " . $this->filters["rune_min_max_efficiency"] . " AND " .
|
|
|
- " rune.max_efficiency <= " . $this->filters["rune_max_max_efficiency"] . " AND " .
|
|
|
- " rune.type = rune_alt.type AND " .
|
|
|
- " rune.slot = rune_alt.slot AND " .
|
|
|
- " rune.main_stat = rune_alt.main_stat AND " .
|
|
|
- " rune_alt.stars >= " . $this->filters["alternative_min_stars"] . " AND " .
|
|
|
- " rune_alt.level >= " . $this->filters["alternative_min_level"] . " AND " .
|
|
|
- " rune_alt.original_quality >= " . $this->filters["alternative_min_original_quality"] . " AND ";
|
|
|
+ $s = "
|
|
|
+ SELECT
|
|
|
+ unit.id AS unit,
|
|
|
+ rune.id AS id,
|
|
|
+ rune_alt.id AS alternative
|
|
|
+ FROM
|
|
|
+ rune,
|
|
|
+ rune rune_alt,
|
|
|
+ unit,
|
|
|
+ k_unit
|
|
|
+ WHERE
|
|
|
+ unit.id = rune.assigned_to AND
|
|
|
+ unit.unit = k_unit.id AND
|
|
|
+ unit.stars >= " . $this->filters["monster_min_stars"] . " AND
|
|
|
+ unit.stars <= " . $this->filters["monster_max_stars"] . " AND
|
|
|
+ rune.stars >= " . $this->filters["rune_min_stars"] . " AND
|
|
|
+ rune.stars <= " . $this->filters["rune_max_stars"] . " AND
|
|
|
+ rune.level >= " . $this->filters["rune_min_level"] . " AND
|
|
|
+ rune.level <= " . $this->filters["rune_max_level"] . " AND
|
|
|
+ rune.quality >= " . $this->filters["rune_min_quality"] . " AND
|
|
|
+ rune.quality <= " . $this->filters["rune_max_quality"] . " AND
|
|
|
+ rune.original_quality >= " . $this->filters["rune_min_original_quality"] . " AND
|
|
|
+ rune.original_quality <= " . $this->filters["rune_max_original_quality"] . " AND
|
|
|
+ rune.efficiency >= " . $this->filters["rune_min_efficiency"] . " AND
|
|
|
+ rune.efficiency <= " . $this->filters["rune_max_efficiency"] . " AND
|
|
|
+ rune.max_efficiency >= " . $this->filters["rune_min_max_efficiency"] . " AND
|
|
|
+ rune.max_efficiency <= " . $this->filters["rune_max_max_efficiency"] . " AND
|
|
|
+ rune.type = rune_alt.type AND
|
|
|
+ rune.slot = rune_alt.slot AND
|
|
|
+ rune.main_stat = rune_alt.main_stat AND
|
|
|
+ rune_alt.stars >= " . $this->filters["alternative_min_stars"] . " AND
|
|
|
+ rune_alt.level >= " . $this->filters["alternative_min_level"] . " AND
|
|
|
+ rune_alt.original_quality >= " . $this->filters["alternative_min_original_quality"] . " AND
|
|
|
+ ";
|
|
|
switch ($this->filters["alternative_source"]){
|
|
|
case 0: // Unassigned
|
|
|
$s = $s . " rune_alt.assigned_to IS NULL AND ";
|
|
|
break;
|
|
|
case 1: // Unassigned or assigned to lower star monsters
|
|
|
- $s = $s .
|
|
|
- " ( " .
|
|
|
- " rune_alt.assigned_to IS NULL OR " .
|
|
|
- " rune_alt.assigned_to IN (SELECT id FROM unit m WHERE m.stars < unit.stars) " .
|
|
|
- " ) AND ";
|
|
|
+ $s = $s . "
|
|
|
+ (
|
|
|
+ rune_alt.assigned_to IS NULL OR
|
|
|
+ rune_alt.assigned_to IN (SELECT id FROM unit m WHERE m.stars < unit.stars)
|
|
|
+ ) AND
|
|
|
+ ";
|
|
|
break;
|
|
|
// Case 2: Assigned or unassigned.
|
|
|
}
|
|
|
@@ -301,16 +303,17 @@
|
|
|
}
|
|
|
$s = $s . "-1) ";
|
|
|
}
|
|
|
- $s = $s .
|
|
|
- "ORDER BY " .
|
|
|
- " unit.stars DESC, " .
|
|
|
- " unit.level DESC, " .
|
|
|
- " unit.id, " .
|
|
|
- " rune.slot, " .
|
|
|
- " id, " .
|
|
|
- " rune_alt.stars DESC, " .
|
|
|
- " rune_alt.original_quality DESC , " .
|
|
|
- " rune_alt.main_stat_value DESC;";
|
|
|
+ $s = $s . "
|
|
|
+ ORDER BY
|
|
|
+ unit.stars DESC,
|
|
|
+ unit.level DESC,
|
|
|
+ unit.id,
|
|
|
+ rune.slot,
|
|
|
+ id,
|
|
|
+ rune_alt.stars DESC,
|
|
|
+ rune_alt.original_quality DESC,
|
|
|
+ rune_alt.main_stat_value DESC;
|
|
|
+ ";
|
|
|
return $s;
|
|
|
}
|
|
|
}
|