mirror of
https://github.com/pi-hole/pi-hole
synced 2024-12-22 14:58:08 +00:00
Use views for all tables and set disabled column to false for those tables that support it
Signed-off-by: DL6ER <dl6er@dl6er.de>
This commit is contained in:
parent
710036adae
commit
dcf0a605cf
@ -1,7 +1,5 @@
|
|||||||
CREATE TABLE whitelist (domain TEXT UNIQUE NOT NULL, comment TEXT, disabled BOOLEAN DEFAULT 0, DateAdded DATETIME);
|
CREATE TABLE whitelist (domain TEXT UNIQUE NOT NULL, disabled BOOLEAN DEFAULT 0, comment TEXT, DateAdded DATETIME);
|
||||||
|
CREATE TABLE blacklist (domain TEXT UNIQUE NOT NULL, disabled BOOLEAN DEFAULT 0, comment TEXT, DateAdded DATETIME);
|
||||||
CREATE TABLE blacklist (domain TEXT UNIQUE NOT NULL, comment TEXT, disabled BOOLEAN DEFAULT 0, DateAdded DATETIME);
|
|
||||||
|
|
||||||
CREATE TABLE gravity (domain TEXT UNIQUE NOT NULL);
|
CREATE TABLE gravity (domain TEXT UNIQUE NOT NULL);
|
||||||
|
|
||||||
CREATE VIEW vw_gravity AS SELECT DISTINCT a.domain
|
CREATE VIEW vw_gravity AS SELECT DISTINCT a.domain
|
||||||
@ -12,3 +10,7 @@ CREATE VIEW vw_blacklist AS SELECT DISTINCT a.domain
|
|||||||
FROM blacklist a
|
FROM blacklist a
|
||||||
WHERE a.disabled != 1 AND
|
WHERE a.disabled != 1 AND
|
||||||
a.domain NOT IN (SELECT domain from whitelist WHERE disabled != 1);
|
a.domain NOT IN (SELECT domain from whitelist WHERE disabled != 1);
|
||||||
|
|
||||||
|
CREATE VIEW vw_whitelist AS SELECT DISTINCT a.domain
|
||||||
|
FROM whitelist a
|
||||||
|
WHERE a.disabled != 1;
|
||||||
|
17
gravity.sh
17
gravity.sh
@ -115,16 +115,27 @@ gravity_store_in_database() {
|
|||||||
gravity_Cleanup "error"
|
gravity_Cleanup "error"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Store domains in gravity database
|
# Store domains in gravity database table ${table}
|
||||||
output=$( { sqlite3 "${gravityDBfile}" <<< ".import \"${source}\" ${table}"; } 2>&1 )
|
output=$( { sqlite3 "${gravityDBfile}" <<< ".import \"${source}\" ${table}"; } 2>&1 )
|
||||||
status="$?"
|
status="$?"
|
||||||
|
|
||||||
if [[ "${status}" -ne 0 ]]; then
|
if [[ "${status}" -ne 0 ]]; then
|
||||||
echo -e "\\n ${CROSS} Unable to create ${table} database ${gravityDBfile}\\n ${output}"
|
echo -e "\\n ${CROSS} Unable to create ${table} in database ${gravityDBfile}\\n ${output}"
|
||||||
gravity_Cleanup "error"
|
gravity_Cleanup "error"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Empty $adList if it already exists, otherwise, create it
|
if [ "$table" == "whitelist" ] || [ "$table" == "blacklist" ]; then
|
||||||
|
# Set disabled to false
|
||||||
|
output=$( { sqlite3 "${gravityDBfile}" <<< "UPDATE ${table} SET disabled = 0 WHERE disabled IS NULL;"; } 2>&1 )
|
||||||
|
status="$?"
|
||||||
|
|
||||||
|
if [[ "${status}" -ne 0 ]]; then
|
||||||
|
echo -e "\\n ${CROSS} Unable to set disabled states (${table}) in database ${gravityDBfile}\\n ${output}"
|
||||||
|
gravity_Cleanup "error"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Empty $template if it already exists, otherwise, create it
|
||||||
output=$( { : > "${template}"; } 2>&1 )
|
output=$( { : > "${template}"; } 2>&1 )
|
||||||
status="$?"
|
status="$?"
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user