Filter
This commit is contained in:
@@ -294,7 +294,7 @@ p {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.mark {
|
.mark {
|
||||||
width: 24px;
|
width: 32px;
|
||||||
height: 24px;
|
height: 24px;
|
||||||
border: 2px solid #606060;
|
border: 2px solid #606060;
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
|
|||||||
@@ -14,7 +14,7 @@
|
|||||||
<tr>
|
<tr>
|
||||||
<td>Name</td>
|
<td>Name</td>
|
||||||
<td>ID</td>
|
<td>ID</td>
|
||||||
<td>Salary</td>
|
<td>Contract</td>
|
||||||
<td>Team</td>
|
<td>Team</td>
|
||||||
<td>Position</td>
|
<td>Position</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|||||||
@@ -21,6 +21,28 @@
|
|||||||
</select>
|
</select>
|
||||||
<p>Search players by name:</p>
|
<p>Search players by name:</p>
|
||||||
<input type="text" id="query" placeholder="Contains" required>
|
<input type="text" id="query" placeholder="Contains" required>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="days">
|
||||||
|
<label class="checkbox">
|
||||||
|
<input type="checkbox" name="days" value="QB" checked></input>
|
||||||
|
<span class="mark">QB</span>
|
||||||
|
</label>
|
||||||
|
<label class="checkbox">
|
||||||
|
<input type="checkbox" name="days" value="RB" checked></input>
|
||||||
|
<span class="mark">RB</span>
|
||||||
|
</label>
|
||||||
|
<label class="checkbox">
|
||||||
|
<input type="checkbox" name="days" value="TE" checked></input>
|
||||||
|
<span class="mark">TE</span>
|
||||||
|
</label>
|
||||||
|
<label class="checkbox">
|
||||||
|
<input type="checkbox" name="days" value="WR" checked></input>
|
||||||
|
<span class="mark">WR</span>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
<button type="submit">Search</button>
|
<button type="submit">Search</button>
|
||||||
</form>
|
</form>
|
||||||
|
|
||||||
|
|||||||
@@ -15,9 +15,18 @@ updateTableVisibility();
|
|||||||
if (searchForm)searchForm.onsubmit = async e => {
|
if (searchForm)searchForm.onsubmit = async e => {
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
if (!verifyLogin()) return;
|
if (!verifyLogin()) return;
|
||||||
|
|
||||||
|
const formData = new FormData(searchForm);
|
||||||
|
|
||||||
|
let positions = formData.getAll("days");
|
||||||
|
|
||||||
|
while (positions.length !== 4) {
|
||||||
|
positions.push("NOPE");
|
||||||
|
}
|
||||||
|
|
||||||
let resultObject = await postData("/getPlayers", {
|
let resultObject = await postData("/getPlayers", {
|
||||||
player: document.getElementById("query").value
|
player: document.getElementById("query").value,
|
||||||
|
positions: positions
|
||||||
}, token);
|
}, token);
|
||||||
|
|
||||||
if (resultObject.matches.length === 0) {
|
if (resultObject.matches.length === 0) {
|
||||||
|
|||||||
@@ -161,11 +161,15 @@ app.post("/toggleWatched", authenticate, async (req, res) => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
app.post("/getPlayers", authenticate, async (req, res) => {
|
app.post("/getPlayers", authenticate, async (req, res) => {
|
||||||
const { player } = req.body;
|
const { player, positions } = req.body;
|
||||||
|
|
||||||
const result = await pool.request()
|
const result = await pool.request()
|
||||||
.input("query", sql.VarChar, player)
|
.input("query", sql.VarChar, player)
|
||||||
.query(`SELECT p.PlayerID, p.PlayerName, c.TotalValue, p.Team, p.Position FROM Player AS p JOIN Contract AS c ON p.PlayerID = c.PlayerID WHERE p.PlayerName LIKE '%' + @query + '%'`);
|
.input("one", sql.VarChar, positions[0])
|
||||||
|
.input("two", sql.VarChar, positions[1])
|
||||||
|
.input("three", sql.VarChar, positions[2])
|
||||||
|
.input("four", sql.VarChar, positions[3])
|
||||||
|
.query(`SELECT p.PlayerID, p.PlayerName, c.TotalValue, p.Team, p.Position FROM Player AS p JOIN Contract AS c ON p.PlayerID = c.PlayerID WHERE p.PlayerName LIKE '%' + @query + '%' AND p.Position IN (@one, @two, @three, @four);`);
|
||||||
|
|
||||||
res.status(200).json({ query: player, matches: result.recordset });
|
res.status(200).json({ query: player, matches: result.recordset });
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user