Database functionality for falocalrepo.
Project description
Tables
To store its information, the database uses separate tables: USERS
, SUBMISSIONS
, JOURNALS
, SETTINGS
,
and HISTORY
.
Note: bar-separated lists are formatted as |item1||item2|
to properly isolate all elements
Users
The users' table contains a list of all the users that have been download with the program, the folders that have been downloaded, and the submissions found in each of those.
Each entry contains the following fields:
USERNAME
the URL username of the user (no underscores or spaces)FOLDERS
the folders downloaded for that specific user, sorted and bar-separatedACTIVE
1
if the user is active,0
if notUSERPAGE
the user's profile in HTML or BBCode format
Submissions
The submissions' table contains the metadata of the submissions downloaded by the program and information on their files
ID
the id of the submissionAUTHOR
the username of the author (uploader) in full formatTITLE
DATE
upload date in ISO format YYYY-MM-DDTHH:MMDESCRIPTION
description in HTML or BBCode formatFOOTER
footer in HTML or BBCode formatTAGS
bar-separated tagsCATEGORY
SPECIES
GENDER
RATING
TYPE
image, text, music, or flashFILEURL
a bar-separated list of the remote URLs for the submission filesFILEEXT
a bar-separated list of extensions of the downloaded files. Can be empty if the file contained errors and could not be recognised upon downloadFILESAVED
file and thumbnail download status as a 3bit flag:xx1
if thumbnail was downloaded,xx0
if not;x1x
if at least one file was validx0x
if not;1xx
if all given files where valid,0xx
if not. Possible values are0
through7
(3 bit).FAVORITE
a bar-separated list of users that have "faved" the submissionMENTIONS
a bar-separated list of users that are mentioned in the submission description as linksFOLDER
the folder of the submission (gallery
orscraps
)USERUPDATE
1
if the submission was added as a user update otherwise0
Journals
The journals' table contains the metadata of the journals downloaded by the program.
ID
the id of the journalAUTHOR
the username of the author (uploader) in full formatTITLE
DATE
upload date in ISO format YYYY-MM-DDTHH:MMCONTENT
content in HTML or BBCode formatHEADER
header in HTML or BBCode formatFOOTER
footer in HTML or BBCode formatMENTIONS
a bar-separated list of users that are mentioned in the journal content as linksUSERUPDATE
1
if the journal was added as a user update otherwise0
Comments
The comments' table contains the metadata of the journals and submissions stored in the database.
ID
the id of the commentPARENT_TABLE
SUBMISSIONS
if the comment relates to a submission,JOURNAL
if the comment relates to a journalPARENT_ID
the id of the parent object (submission or journal)REPLY_TO
the id of the parent comment, if the comment is a replyAUTHOR
the username of the author in full formatDATE
post date in ISO format YYYY-MM-DDTHH:MM:SSTEXT
the text of the comment
Settings
The settings table contains settings for the program and variable used by the database handler and main program.
COOKIES
cookies for the download program, stored in JSON formatFILESFOLDER
location of downloaded submission filesVERSION
database version
History
The history table holds events related to the database.
TIME
event time in ISO format YYYY-MM-DDTHH:MM:SS.ssssssEVENT
the event description
Submission Files
The save_submission
functions saves the submission metadata in the database and stores the files.
Submission files are saved in a tiered tree structure based on their submission ID. IDs are zero-padded to 10 digits and then broken up in 5 segments of 2 digits; each of these segments represents a folder tha will be created in the tree.
For example, a submission 1457893
will be padded to 0001457893
and divided into 00
, 01
, 45
, 78
, 93
. The
submission file will then be saved as 00/01/45/78/93/submission.file
with the correct extension extracted from the
file itself (FurAffinity links do not always contain the right extension and sometimes confuse JPEG and PNG).
Upgrading Database
Note: versions prior to 4.19.0 are not supported by falocalrepo-database version 5.0.0 and above. To update from
those, use falocalrepo v3.25.0 to upgrade the database to version
4.19.0.
Note: Versions prior to 2.7.0 are not supported by falocalrepo-database version 3.0.0 and above. To update from those
to the new version use falocalrepo v2.11.2 to upgrade
the database to version 2.7.0
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file falocalrepo_database-5.4.6.tar.gz
.
File metadata
- Download URL: falocalrepo_database-5.4.6.tar.gz
- Upload date:
- Size: 26.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.2.2 CPython/3.10.14 Linux/6.5.0-1025-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b365f10b043ad4f27f45dccf0bea33e8cd4a6ee3cfaaf252996677551a458854 |
|
MD5 | 7478f878f20264e15ef01b325b95a266 |
|
BLAKE2b-256 | 94ecdb0ff9eca9fe8532aa10f4552a0624e8a354bc24220063954794adc1897c |
File details
Details for the file falocalrepo_database-5.4.6-py3-none-any.whl
.
File metadata
- Download URL: falocalrepo_database-5.4.6-py3-none-any.whl
- Upload date:
- Size: 27.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.2.2 CPython/3.10.14 Linux/6.5.0-1025-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c1c9a31c13c62dadd58a940b4a0de6bded956dc90a79fcbcbf9404e523ba3f16 |
|
MD5 | 4178a4dfa62e5ed8682cd6b2f74838ed |
|
BLAKE2b-256 | 877987bce73593753e8822f043e7f0adcc8e9a85b61bf38eb47683ceee633dc7 |