MyList export template guidelines: Difference between revisions
mNo edit summary |
|||
Line 52: | Line 52: | ||
:: install Storable | :: install Storable | ||
:: bye | :: bye | ||
{{eyecatch|1|Note|If you installed 5.8.8.820 '''don't''' overwrite Perl's copy of Storable with the one in the SDK.}} | |||
=== Additional Module HTML::Template::Expr === | === Additional Module HTML::Template::Expr === |
Revision as of 22:39, 11 May 2009
This page will try to give some pointers in to MyList Export Template creation.
Frequently Asked Questions
What are MyList Exports?
- MyList exports are a way to export your MyList, providing off-line browsing capabilities, it's like a snapshot of the state of your MyList at the moment you requested the export.
Can I create my own template?
- Yes, this page should help you starting with your own template.
What are the requirements for building a template?
- Well, the only true *requirement* is a text editor, though if you want to test your template before submitting you will need Perl (v5.8.8+) to use the SDK.
Include images, ext. stylesheets/JavaScript files with templates?
- Yes, you can even include subdirectories but please try to keep the size low.
How do I create files other than .htm?
- Take a look at the csv-minimal theme. You need to create a file called extension.dat which only contains the desired extension, _without_ the dot!
What is that info.dat file?
- It's meant to provide the user with a short info about the template. The content should not be too long but is otherwise left to the author of the template.
- However, it is strongly recommended to begin the file with 3 special lines:
- (C) 2003 by EXP
- Version: 0.01 (08.07.2003)
- 1. copyright of the template author, you may include your email address here
- 2. version number and date
- 3. one empty line
About the SDK
About this SDK
- This SDK is meant to allow you to test your templates for the AniDB MyList export function on your own pc. It should work under Windows and Linux. You might need to install some additional software (see bellow for Installing Perl).
Current version and where to get
- Current release of the SDK is 0.13.4, get here: http://static.anidb.net/files/anidb_template_sdk_0.13.4.rar
- Current version of the SDK on SVN is 0.13.5.
Resources
- The new development forum
- The old development forum (old forum)
- The SDK thread (old forum)
- Image pack
Installing Perl
- This program needs Perl to create example html files from the templates. If you don't have Perl installed (preferably 5.8.8) you'll need to do so now.
- Under Windows you'll need to download ActivePerl 5.8.8.820+ from activeperl.com:
- http://downloads.activestate.com/ActivePerl/Windows/5.8/
- Install it to c:\perl (or some other directory, but remember where you installed it!).
- Under Linux it should already be installed. If not get it from:
- If you are not using 5.8.8.820 it's possible you need to update Storable, try the following:
- perl -MCPAN -eshell
- install Storable
- bye
Note If you installed 5.8.8.820 don't overwrite Perl's copy of Storable with the one in the SDK.
Additional Module HTML::Template::Expr
- Under Windows with ActivePerl go to it's startmenu entry (might be called "ActiveState ActivePerl 5.8") and start "Perl Package Manager". Then enter
- install HTML-Template-Expr
- exit
- Under Linux you have to do a:
- perl -MCPAN -eshell
- install HTML::Template::Expr
- bye
- You should now be able to execute export.pl, take a look at the provided bat file to see how it is used.
- (export.pl takes one parameter which is the name of the template to use)
- Note: you can get more information about the HTML::Template::Expr here: http://html-template.sourceforge.net/html_template_expr.html
Changelog
- Read here Mylist_export_SDK_changelog
SVN Access
- If you created your own template for AniDB and want to share it with everyone else please send a pm to deridiot or fahrenheit @ AniDB
- You might also want to periodically check this page for a list of the latest changes.
- The source code of all release versions of the MyList Export templates listed on this page is AniDB:Mylist_export_DEV.
- By HTTP: http://dev.anidb.net/websvn/
Template HowTo
Well, here's all you need to write templates for the MyList export function.
We really need better templates!
A theme consist out of one or multiple tpl files. Those are called:
- mylist.tpl - (mandatory)
- anime.tpl - (optional)
- extension.dat - (optional)
- info.dat - (mandatory)
- changelog.txt - (optional)
All files, if possible, in Unix format. But dos format doesn't hurt either, I'll convert them, in that case.
The export script will parse the mylist.tpl file and create one output file called i.e. mylist.htm. So mylist.tpl get's parsed only once (because you only have one MyList).
However anime.tpl will be parsed once for every anime in your MyList. And for each a unique file will be created. The default file extension for the output files is "htm", however if you create a file called "extension.dat" and put only the extension in the first line of the file, i.e. "txt" then that extension will be used.
The file info.dat should contain at least the following 3 lines:
(C) 2003 by EXP Version: 0.01 (08.07.2003)
1. copyright of the template author, you may include your email address here
2. version number and date
3. one empty line
The rest may be used for a short description of the template.
Please do not include the changelog in your info.dat file, instead create a separate changelog.txt file and put your changelog there.
Please also note that the content of the info.dat will be displayed on the AniDB MyList Export Page, so please make sure that your additional info is actually of interest to AniDB users who are trying to decide which theme to use.
The export script will create the file (i.e.) mylist.htm and if anime.tpl was provided a folder "anime" where for each anime a file "a<animeid>.htm" will be created.
This can be used to created a linked animelist instead of one huge single html file with all data in it.
The tpl files are simple plain text or html files. So just put normal html code in them.
The export function uses the HTML::Template Perl module to create the output.
This means you have to use some special tags:
Examples
Example 1
- <tmpl_var name=data_anime_name>
- will be replaced with the value of the specified variable, in this case the anime name.
Example 2
- <tmpl_if name=status_anime_iswatched>anime is watched<tmpl_else>anime is unwatched</tmpl_if>
- This is a simple if/else statement. This would write "anime is watched" or "anime is unwatched" into the resulting html file. Note that you can only check if a variable is defined, it is not possible to compare values. All variables beginning with status_ are meant to be used in ifs. They are either 0 or 1.
Example 3
- <tmpl_unless name=status_anime_iswatched>anime is unwatched</tmpl_unless>
- You can also used id variables, if the id is undef (0) they are false, otherwise they are true.
The negation of <tmpl_if> is <tmpl_unless> i.e.
- This would only write "anime is unwatched" to the output file if status_anime_iswatched is 0.
- Note that this tag is closed with /tmpl_unless and not tmpl_if.
Example 4
- <tmpl_if expr="data_file_audcnt > 1">multiple audio streams</tmpl_if>
- You can also check if a value is greater or smaller than something.
Example 5
- You will also need loops to create a useful template. What are loops?
- Well, to create html tables there will be some parts of the html code (mostly table rows) which need to be repeated over and over again and filled with anime/ep/file info.
- This is specified like this:
</tmpl_loop>
<tmpl_var name=data_anime_name> |
- This would create a table with a list of all anime titles.
- Take a look at the included themes for more examples.
NOTE: the first and last lines in anime.tpl start/close a loop, this has internal reasons and you have to do this too, or your theme won't work.
ADVICE: the best way to write your own theme might be to take one of the existing ones and edit it.
List of variables
Global Vars
- global_user
- AniDB Username
- global_user_id
- AniDB Username ID
- global_date
- Date of creation (i.e. 02.08.2003 12:18)
- global_date_short
- Short date of creation (i.e. 02.08.03)
- global_animecount
- Number of animes in MyList
- global_epcount
- Number of episodes in MyList
- global_filecount
- Number of files in MyList
- global_bytecount
- Overall size of all files in MyList in Bytes
- global_bytecount_h
- Same as global_bytecount but in kB, MB, GB, ...
- global_animedburl
- URL to animedb, http://..../animedb.pl
- global_userstat_animeadded
- Anime entries added by user to DB
- global_userstat_epsadded
- Episode entries added by user to DB
- global_userstat_filesadded
- Files added by user to DB
- global_userstat_groupsadded
- Group entries added by user to DB
- global_userstat_lamefiles
- Number of lame files user owns
- global_userstat_lamefilesp
- Percentage of lame files in MyList
- global_userstat_independencep
- Percentage of independence (AniDB_Stats:Most_Independent_User)
- global_userstat_leechp
- Percentage of leechness (AniDB_Stats:Biggest_Leech0r)
- global_userstat_reviews
- Total reviews written by user
- global_userstat_votes
- Number of votes issued by user
- global_userstat_totalviewedp
- Percentage of viewed episodes, from all DB
- global_userstat_totalownedp
- Percentage of owned episodes, from all DB
- global_userstat_ownviewedp
- Percentage of viewed episodes, from MyList
- global_userstat_viewedepcnt
- Number of viewed episodes, from MyList
global_genren_loop
New global loop for the cat system NOTES: you should try to limit the usage of this loop to mylist.tpl
- global_genren_id
- cat id
- global_genren_name
- cat name
- global_genren_parentid
- cat parent id
- global_genren_ishentai
- is cat 18+ restricted
Loops, Subloops and Loopdata
loop_anime
loop for anime entries
- data_anime_id
- AniDB ID for anime entry
- data_anime_eps
- Total of episodes
- data_anime_eps_special
- Total number of special episodes
- data_anime_eps_total
- Total number of episodes
- data_anime_year
- Year of release/airing
- data_anime_producer
- [deprecated] Producer
- data_anime_url
- Official home page
- data_anime_other
- Anime synopsis
- data_anime_date
- Date of addition to DB
- data_anime_date_short
- Short date of addition to DB
- data_anime_update
- Last update date (in Unix time format)
- data_anime_update_short
- Last update short date
- data_anime_startdate
- Start airing/release date
- data_anime_startdate_short
- Short start airing/release date
- data_anime_enddate
- End airing/release date
- data_anime_enddate_short
- Short end airing/release date
- data_anime_rating
- Average rating
- data_anime_votes
- Total votes
- data_anime_tmprating
- Average temporal rating
- data_anime_tmpvotes
- Total temporal votes
- data_anime_reviewrating
- Average review rating
- data_anime_reviews
- Number of reviews
- data_anime_type_id
- Anime type ID (see ids.txt)
- data_anime_type_name
- Anime type name
- data_anime_animenfoid
- Old AnimeNfo ID (i.e. 954)
- data_anime_animenfoid2
- New AnimeNfo ID (i.e. klmgzk)
- data_anime_animenfourl
- Complete AnimeNfo URL (without <a href="">, just a plain URL)
- data_anime_animenfourl_name
- AnimeNfo link name as displayed at AniDB (i.e. "ID: 954" or "ID: 954,klmgzk")
- data_anime_annid
- Anime News Network ID
If only one file is present for an anime the following variables will have the same values as the ones for that file, if there is more than one file and all files have the same mystate it will match those. in any other case the mystate is undef
- data_anime_mystate
- State of anime files (undef=-1, unknown=0, on hdd=1, on cd=2, deleted=3)
- data_anime_mystate_string
- String representation of state (i.e. "unknown" or "on CD")
- data_anime_mystate_icon
- AniDB URL to state icon (img tag already included)
- data_anime_wishlist_type
- Wishlist type ID (0="unknown / unfiled", 1="to watch", 2="to get", 3="blacklist"),
- data_anime_wishlist_type_name
- Wishlist type name
- data_anime_wishlist_priority
- Wishlist priority (0="low", 1="medium", 3="high")
- data_anime_wishlist_priority_name
- Wishlist priority string representation
- data_anime_wishlist_comment
- Wishlist comment
- data_anime_my_vote
- User vote for this anime
- data_anime_my_tmpvote
- User temporal vote for this anime
- data_anime_my_vote_date
- Date when vote for anime was last changed
- data_anime_my_vote_date_short
- Same, short version
- data_anime_my_tmpvote_date
- Date when temp vote for anime was last changed
- data_anime_my_tmpvote_date_short
- Same, short version
- data_anime_annurl
- Anime News Network URL
- data_anime_allcinemaid
- AllCinema ID
- data_anime_allcinemaurl
- AllCinema URL
- data_anime_animeplanetid
- Anime-Planet ID (i.e. 415)
- data_anime_animeplaneturl
- Anime-Planet Recommendation URL
- data_anime_my_eps
- Number of non-special episodes in MyList
- data_anime_my_eps_special
- Number of special episodes in MyList
- data_anime_my_eps_total
- Number of non-special and special episodes in MyList
- data_anime_my_watchedeps
- Number of watched episodes
- data_anime_my_watchedeps_special
- Number of watched specials
- data_anime_my_watchedeps_total
- Total number of watched episodes and specials
- data_anime_my_unwatchedeps
- Number of unwatched episodes
- data_anime_my_unwatchedeps_special
- Number of unwatched specials
- data_anime_my_unwatchedeps_total
- Total number of unwatched episodes and specials
- data_anime_my_size
- Overall size of all anime files in MyList in Bytes
- data_anime_my_size_h
- Same as data_anime_my_size but in kB, MB, GB, ...
- data_anime_name
- Default anime title (mostly Japanese romaji), always present
- data_anime_name_langname
- Language name (ie: Japanese)
- data_anime_name_langsname
- Language shortname (i.e.: ja)
- data_anime_title_jap_kanji
- Anime title in Japanese kanji, optional
- data_anime_title_eng
- Anime title in English, optional
- data_anime_title_other
- Other official title in another language, optional
- data_anime_awardicons
- Ready to use html string which displays the little award icons from AniDB. Empty string if no awards are present.
loop_anime_genren
loop for new genres (categories)
- data_anime_genren_id
- Genre (Category) ID
- data_anime_genren_name
- Genre (Category) name
- data_anime_genren_parentid
- Parent genre (category) ID
- data_anime_genren_ishentai
- This genre (category) is hentai related
- data_anime_genren_weight
- Weight of the category
- data_anime_genren_weight_name
- Textual notation of the category weight
loop_anime_tag
loop for user defined tags
- data_anime_tag_id
- Tag ID
- data_anime_tag_name
- Tag name
- data_anime_tag_date
- Date of creation
loop_anime_company
loop for all involved companies
- data_anime_company_id
- Company ID
- data_anime_company_name
- Company name
- data_anime_company_shortname
- Company short name
- data_anime_company_othername
- Company other name
- data_anime_company_type
- Company type ID (see ids.txt)
- data_anime_company_url
- Company URL
- data_anime_company_picurl
- Company logo URL
- data_anime_company_aptype
- Company role for the anime (see ids.txt)
- data_anime_company_type_name
- company type string (company, organization, individual, etc.)
- data_anime_company_aptype_name
- company relation to given anime string (production, music, etc.)
loop_anime_title_official
loop for official titles
- data_anime_title_official_name
- Official title (data_anime_name is not included, data_anime_title_jap_kanji and data_anime_title_eng are included)
- data_anime_title_official_langid
- Language ID
- data_anime_title_official_langname
- Language name (ie: Japanese)
- data_anime_title_official_langsname
- Language shortname (ie: ja)
loop_anime_title_alias
loop for synonyms
- data_anime_title_alias_name
- Synonyms (data_anime_name and data_anime_title_* are not included)
- data_anime_title_alias_langid
- Language ID
- data_anime_title_alias_langname
- Language name (ie: Japanese)
- data_anime_title_alias_langsname
- Language shortname (ie: ja)
loop_anime_title_short
loop for short titles
- data_anime_title_short_name
- Short titles
- data_anime_title_short_langid
- Language ID
- data_anime_title_short_langname
- Language name (ie: Japanese)
- data_anime_title_short_langsname
- Language shortname (ie: ja)
loop_anime_titles
loop for all titles
- data_anime_title_name
- Title
- data_anime_title_langid
- Language ID
- data_anime_title_type_id
- Type ID (1 = main, 2 = syn, 3 = short, 4 = official)
- data_anime_title_type_string
- Type name (main, syn, short, official)
- data_anime_title_langname
- Language name (ie: Japanese)
- data_anime_title_langsname
- Language shortname (ie: ja)
loop_anime_award_types
loop for award types
Award types describe the types of awards which were assigned to this anime. Typically that would be AniDB TOP10 or ARC Awards, however this is likely to be extended in the future without notice, your template should not depend on the id.
- data_anime_award_type_id
- Award type ID
- data_anime_award_type_name
- Award type name
- data_anime_award_type_img
- Award type image (full html image tag)
loop_anime_awards
loop for Awards
These are the actual awards which are assigned to this anime. These are things like the AniDB TOP10 award, ARC Best Anime, ARC Best Action Anime, etc. Again a template should not depend on the ids.
- data_anime_award_id
- Award ID
- data_anime_award_name
- Award name
- data_anime_award_type
- Award type
- data_anime_award_url
- Award URL (URL assigned to this award, i.e. overview over all awards of this type)
data_anime_award_picurl : URL to pic only[this was removed since AniDB v0.1.47]
loop_anime_genre
loop of anime genres (old system)
- data_anime_genre_id
- Genre ID
- data_anime_genre_name
- Genre name
loop_anime_groups
loop of anime groups
- data_anime_group_id
- Group ID
- data_anime_group_agid
- Group AGID
- data_anime_group_name
- Group name
- data_anime_group_sname
- Group shortname
- data_anime_group_state
- Group state (complete, dropped, etc)
- data_anime_group_lastep
- Last episode released
- data_anime_group_lastup
- Last update date (dd.mm.yyyy hh:mm)
- data_anime_group_votes
- Number of votes
- data_anime_group_rating
- Rating
- data_anime_group_cmts
- Number of comments
- data_anime_group_epcnt
- Normal episode count
- data_anime_group_sepcnt
- Specials count (S + O + C + T + P eps)
- data_anime_group_myvote
- My vote or '-' if none
- data_anime_group_myvote_date
- My vote date (dd.mm.yyyy hh:mm)
- data_anime_group_eprange
- episode range for a given group (as in AniDB)
data_anime_group_alangs_loop
loops group audio languags
- data_anime_group_alang_id
- audio language id (i.e.: 1)
- data_anime_group_alang_name
- audio language name (Chinese, English, etc)
- data_anime_group_alang_sname
- audio language short name (ja, ne, etc)
data_anime_group_slangs_loop
loops group subtitle languags
- data_anime_group_slang_id
- sub language id (i.e.: 1)
- data_anime_group_slang_name
- sub language name (Chinese, English, etc)
- data_anime_group_slang_sname
- sub language short name (ja, ne, etc)
Status variables
- status_anime_iscomplete
- Anime is complete (0/1)
- status_anime_iswatched
- Anime is completely watched (0/1)
- status_anime_genre_<genrename>
- [deprecated] i.e. status_anime_genre_action = 1, if the anime has genre action added. Genres are all lowercase and spaces are replaced with _.
- status_anime_my_isvoted
- User voted for this anime (0/1)
- status_anime_my_istmpvoted
- User temporally voted for this anime (0/1)
- status_anime_mystate_undef
- Has undefined state (0/1)
- status_anime_mystate_unknown
- Has unknown state (0/1)
- status_anime_mystate_onhdd
- Has onhdd state (0/1)
- status_anime_mystate_oncd
- Has oncd state (0/1)
- status_anime_mystate_deleted
- Has deleted state (0/1)
- status_anime_isinwishlist
- Anime is in wishlist
- status_anime_hasawards
- Has awards (0/1)
- status_anime_title_has_other
- Has other title (0/1)
- status_anime_title_has_jap_kanji
- Has kanji title (0/1)
- status_anime_title_has_eng
- Has English title (0/1)
- status_anime_allcinema_listed
- All Cinema is listed (0/1)
- status_anime_animeplanet_listed
- Anime-Planet is listed (0/1)
- status_anime_ann_listed
- Anime News Network is listed (0/1)
- status_anime_isrestricted
- Anime has +18 restricted audience (0/1)
loop_ep
loop for episodes
- data_ep_id
- Episode ID (as in DB)
- data_ep_epno
- Episode number
- data_ep_name
- Episode name
- data_ep_name_romaji
- Romaji episode name
- data_ep_name_kanji
- Kanji episode name
- data_ep_length
- Episode length, in minutes
- data_ep_aired
- Date of first airing
- data_ep_aired_short
- Short date of first airing
- data_ep_other
- Other information related to episode
- data_ep_rating
- Average rating
- data_ep_votes
- Total votes
- data_ep_myvote
- My vote for a given episode
- data_ep_myvote_date
- My vote date for a given episode
- data_ep_date
- Date of addition to DB
- data_ep_date_short
- Short date of addition to DB
- data_ep_update
- Last update date
- data_ep_update_short
- Last update short date
- data_ep_state
- Episode state (1=Special, 2=Recap, 4=OP/ED/Credits, 32=Trailer, 64=Parody, 128=Others)
Note that the values can be added together, so 3 would be a special which is also a recap. 4, 32, 64 and 128 are exclusive If only one file is present for an ep the following variables will have the same values as the ones for that file, if there is more than one file and all files have the same mystate it will match those. in any other case the mystate is undef
- data_ep_mystate
- State of anime episode (undef=-1, unknown=0, on hdd=1, on cd=2, deleted=3)
- data_ep_mystate_string
- String representation of state (i.e. "unknown" or "on cd")
- data_ep_mystate_icon
- AniDB url to state icon (img tag already included)
loop: data_ep_titles
- data_ep_title_name
- Episode title (includes data_ep_name, data_ep_name_romaji and data_ep_name_kanji)
- data_ep_title_langid
- Language ID
Episode status variables
- status_ep_mystate_undef
- Has undefined state (0/1)
- status_ep_mystate_unknown
- Has unknown state (0/1)
- status_ep_mystate_onhdd
- Has onhdd state (0/1)
- status_ep_mystate_oncd
- Has oncd state (0/1)
- status_ep_mystate_deleted
- Has deleted state (0/1)
- status_ep_state_special
- Episode is a special (0/1)
- status_ep_state_recap
- Episode is a recap (0/1)
- status_ep_state_op
- Episode is an opening (0/1)
- status_ep_state_end
- Episode is an ending (0/1)
- status_ep_iswatched
- Episode was watched (0/1)
- status_ep_hasfile
- Episode has files (0/1)
- status_ep_hasname_kanji
- Has kanji episode name (0/1)
- status_ep_hasname_romaji
- Has romaji episode name (0/1)
loop_file
loop for files
- data_file_id
- File ID (as in DB)
- data_file_size
- File size in bytes (with dots)
- data_file_size_plain
- File size in bytes (without dots)
- data_file_size_h
- Same as data_file_size_plain but in MB
- data_file_filetype
- File type (extension, i.e. avi or mkv)
- data_file_crc
- CRC for file
- data_file_md5
- MD5 hash for file
- data_file_sha1
- SHA1 hash for file
- data_file_tth
- TTH hash for file
- data_file_ed2k_link
- Full ed2k link
- data_file_ed2k_hash
- ed2k hash for file
- data_file_ed2k_name
- ed2k file name
- data_file_group_id
- ID for the group who released the file
- data_file_group_name
- Group name
- data_file_group_shortname
- Short group name
- data_file_released
- Date of release
- data_file_released_short
- Short date of release
- data_file_qual_id
- Quality ID
- data_file_qual_name
- Quality string representation
- data_file_res_name
- Video resolution
- data_file_vidcnt
- Count for video streams (1 for media files, 0 for others)
- data_file_ar
- Aspect ratio
- data_file_ar_name
- The AR string (4:3, 16:9, etc)
- data_file_fps
- Frames per second
- data_file_vbitrate
- Video bit rate
- data_file_vcodec_id
- Video codec ID (see ids.txt)
- data_file_vcodec_name
- Video codec name
- data_file_vflags
- Video Flags (see ids.txt)
- data_file_audcnt
- Count for audio streams (for now just 2)
- data_file_atype
- audio type id (stream #1)
- data_file_atype_name
- audio type string (stream #1)
- data_file_abitrate
- Audio bitrate
- data_file_acodec_id
- Audio codec ID (see ids.txt)
- data_file_acodec_name
- Audio codec name
- data_file_chantype
- Number of audio channels (see ids.txt)
- data_file_chantype_name
- channel string (Mono, Stereo, etc) (stream #1)
- data_file_lang_id
- Language ID (see ids.txt)
- data_file_lang_name
- Language name
- data_file_lang_sname
- Language shortname (ie: ja)
- data_file_atype2
- audio type id (stream #2)
- data_file_atype_name2 - audio type string (stream #2)
- data_file_abitrate2
- Audio bitrate, for second stream
- data_file_acodec_id2
- Audio codec ID (see ids.txt), for second stream
- data_file_acodec_name2
- Audio codec name, for second stream
- data_file_chantype2
- Number of audio channels (see ids.txt), for second stream
- data_file_chantype_name2
- channel string (Mono, Stereo, etc) (stream #2)
- data_file_lang_id2
- Language ID (see ids.txt), for second stream
- data_file_lang_name2
- Language name, for second stream
- data_file_lang_sname2
- Language shortname (ie: ja)
- data_file_subcnt
- Count for subtitle streams (for now just 2)
- data_file_sflags
- Subtitle flags describing the kind of subtitles (see ids.txt)
- data_file_stype
- Subtitle type (see ids.txt)
- data_file_stypename
- subtitle type string (stream #1)
- data_file_sub_id
- Subtitle language ID (see ids.txt)
- data_file_sub_name
- Subtitle language name
- data_file_sub_sname
- Language shortname (ie: ja)
- data_file_sflags2
- Subtitle flags describing the kind of subtitles (see ids.txt), for second stream
- data_file_stype2
- Subtitle type (see ids.txt), for second stream
- data_file_stypename2 - subtitle type string (stream #2)
- data_file_sub_id2
- Subtitle language ID (see ids.txt), for second stream
- data_file_sub_name2
- Subtitle language name, for second stream
- data_file_sub_sname2
- Language shortname (ie: ja)
- data_file_length
- File length in seconds
- data_file_type
- File type (see ids.txt)
- data_file_typename
- file type string (video,audio,etc)
- data_file_type_id
- File source ID
- data_file_type_name
- File source name
- data_file_date
- Date of addition to DB
- data_file_date_short
- Short date of addition to DB
- data_file_update
- Last update date
- data_file_update_short
- Last update short date
- data_file_ldate
- Date when file was added to MyList
- data_file_ldate_short
- Same, short version
- data_file_storage
- User defined string for storage
- data_file_source
- User defined string for source
- data_file_other
- File comments
- data_file_viewdate
- Date when viewed
- data_file_viewdate_short
- Short date when viewed
- data_file_state
- File state (1=CRC ok, 2=CRC error, 4=is v2, 8=is v3, 16=is v4, 32=is v5, 64=is uncensored, 128=is censored)
- data_file_state_versionname
- File release version in string (including v1)
- data_file_mystate
- File state (unknown=0, on hdd=1, on cd=2, deleted=3)
- data_file_mystate_string
- String representation of file state (i.e. "unknown" or "on cd")
- data_file_mystate_icon
- AniDB url to state icon (img tag already included)
- data_file_myfilestate
- User file mystate ID (0=normal, 1=invalid crc, 2=self edited, 10=self ripped, 11=on dvd, 12 on vhs, 13=on tv, 14=theater, 20=filler ep, 100=other)
- data_file_myfilestate_string
- String representation of user file mystate ID
- data_file_myfilestate_icon
- AniDB url to mystate icon (img tag already included)
loop: loop_data_file_filerel
loops available file<->file relations
- data_file_filerel_fid
- one end of the relation
- data_file_filerel_otherfid
- the other end of the relation
- data_file_filerel_type
- type of the relation (subtitle file, etc)
loop: loop_data_file_fileeprel
loops available file<->ep relations
- data_file_fileeprel_fid
- the fid that spans eps
- data_file_fileeprel_eid
- the episode
- data_file_fileeprel_startp
- start percentage
- data_file_fileeprel_endp
- end percentage
File status variables
- status_file_isgeneric
- Is a generic (0/1) (Files:Generic_files)
- status_file_hascomment
- Has comment (0/1)
- status_file_iswatched
- File was watched (0/1)
- status_file_state_crcok
- File has verified CRC (0/1)
- status_file_state_crcfailed
- File has failed CRC (0/1)
- status_file_state_crcunverified
- File has unverified CRC (0/1)
- status_file_state_isv2
- File is second release (0/1)
- status_file_state_isv3
- File is third release (0/1)
- status_file_state_isv4
- File is fourth release (0/1)
- status_file_state_isv5
- File is fifth release (0/1)
- status_file_mystate_unknown
- Has unknown state (0/1)
- status_file_mystate_onhdd
- Has onhdd state (0/1)
- status_file_mystate_oncd
- Has oncd state (0/1)
- status_file_mystate_deleted
- Has deleted state (0/1)
- status_file_myfilestate_normal
- File is normal mystate (0/1)
- status_file_myfilestate_invalidcrc
- File is invalidcrc mystate (0/1)
- status_file_myfilestate_selfedited
- File is sefedited mystate (0/1)
- status_file_myfilestate_selfripped
- File is selfripped mystate (0/1)
- status_file_myfilestate_ondvd
- File is ondvd mystate (0/1)
- status_file_myfilestate_onvhs
- File is onvhs mystate (0/1)
- status_file_myfilestate_ontv
- File is ontv mystate (0/1)
- status_file_myfilestate_theater
- File is theater mystate (0/1)
- status_file_myfilestate_other
- File is other mystate (0/1)
List of Ids
Should this list be outdated you can also check the HTML code of the corresponding drop-downs at AniDB.
Anime Categories
- 1
- unknown
- 2
- TV
- 3
- OVA
- 4
- Movie
- 6
- Web
- 5
- Other
- 6
- TV Special
All Languages (both Audio and Subs use the same ids)
- 1
- unknown
- 2
- japanese
- 3
- chinese (unspecified)
- 4
- english
- 5
- german
- 6
- french
- 8
- italian
- 9
- spanish
- 15
- russian
- 17
- korean
- 18
- polish
- 19
- swedish
- 20
- arabic
- 21
- portuguese
- 23
- norwegian
- 25
- brazilian
- 26
- catalan
- 27
- czech
- 28
- danish
- 29
- dutch
- 30
- finish
- 31
- greek
- 32
- hebrew
- 33
- hungarian
- 34
- instrumental (only on Audio Languages)
- 35
- lithuanian
- 37
- thai
- 38
- turkish
- 41
- chinese (mandarin) (not in Sub Languages)
- 42
- chinese (cantonese) (not in Sub Languages)
- 43
- taiwanese
- 58
- other
- 61
- romanian
- 62
- malay
- 63
- slovak
- 64
- slovenian
- 65
- tartar
- 67
- latvian
- 68
- georgian
- 69
- latin
File Types
- 10
- video file
- 20
- subtitle file
- 30
- audio file
- 90
- generic file
- 100
- other
Audio Codecs
- 1
- unknown
- 2
- AC3
- 3
- WMA (also DivX Audio)
- 5
- MP3 CBR
- 6
- MP3 VBR
- 7
- MSAudio
- 8
- Vorbis (Ogg Vorbis)
- 9
- AAC
- 10
- PCM
- 11
- MP2
- 13
- DTS
Audio Types
- 10
- normal audio
- 20
- commentary
- 30
- fandub
- 40
- alternative voiceover
- 100
- other
Channel Types
- 10
- 1.0 - mono
- 20
- 2.0 - stereo
- 30
- 4.0 - dolby surround
- 40
- 5.1 - 5.1 surround
- 50
- 6.1 - 6.1 surround
- 60
- 7.1 - 7.1 surround
- 100
- other
- 200
- unknown
Subtitle types
- 10
- hard sub
- 20
- soft sub
- 30
- supplementary soft sub (i.e. sign translations)
- 100
- other
- 200
- unknown
Subtitle Flags (bits)
- 0
- none
- 1
- additional explanations
- 2
- dubsubbed
- 4
- hearing impaired subs
- 8
- image subs
- 16
- karaoke subbed
- 32
- signs translated
- 64
- styled subs
- 128
- subs for commentary audio stream
- 256
- unstyled subs
Video Flags (bits)
- 0
- none
- 1
- anamorphic
- 2
- wrong aspect ratio
- 4
- variable frame rate
- 8
- clean video (no hardsubs...)
Video Codecs
- 1
- unknown
- 2
- DivX UNK
- 3
- DivX3
- 5
- DivX4
- 7
- DivX5 (also DivX6)
- 9
- MPEG-1
- 10
- MPEG-2
- 11
- ASP Other
- 12
- Other (non-ASP)
- 14
- RealVideo Other
- 17
- XviD
- 18
- MS MP4x (also WMV1/2)
- 19
- WMV9 (also WMV3)
- 20
- RealVideo 9/10 (also RV40)
- 22
- H264/AVC
Quality Ratings
- 1
- unknown
- 2
- very high
- 3
- high
- 4
- med
- 5
- low
- 6
- very low
- 7
- corrupted
- 8
- eyecancer
File Source Type
- 1
- unknown
- 2
- camcorder
- 3
- TV
- 4
- VHS
- 5
- DTV
- 6
- LD
- 7
- DVD
- 8
- SVCD
- 9
- VCD
- 10
- HKDVD
- 11
- www
Aspect Ratio Ids
- 10
- 4:3
- 20
- 16:9
- 30
- 1.66:1
- 40
- 1.85:1
- 50
- 2.00:1
- 60
- 2.21:1
- 70
- 2.35:1
- 100
- other
- 200
- unknown
File extensions
do not have ids
Company Ids
- 10
- Company
- 20
- Organization
- 30
- Individual
Company Role
- 10
- Financial Production
- 20
- Animation Production
- 30
- Original Story
- 40
- Music Production
- 50
- Animation Co-Production
- 500
- Original Work
- 510
- Production
- 520
- Production Assistance
- 530
- Production Studio
- 540
- Work
- 550
- Work Assistance
- 560
- Work Studio
- 570
- Animation
- 580
- Animation Work
- 590
- Animation Work Assistance
- 600
- Music Work
- 610
- Photography
- 620
- Animation Assistance
- 630
- Publication
- 640
- Music Work Assistance
- 650
- Music Assistance
- 660
- Music Production
- 670
- Assistance/Cooperation
- 1000
- Unknown Relation
Genres
Deprecated
- 1
- Action
- 2
- Adventure
- 26
- Cars
- 3
- Comedy
- 25
- Dementia
- 10
- Demons
- 35
- Detective
- 4
- Drama
- 5
- Ecchi
- 11
- Fantasy
- 33
- Game
- 34
- Ghibli
- 6
- Hentai
- 12
- Historical
- 7
- Horror
- 27
- Kids
- 14
- Magic
- 15
- Martial Arts
- 16
- Mecha
- 28
- Music
- 17
- Mystery
- 18
- Parody
- 8
- Romance
- 19
- Samurai
- 20
- School
- 9
- SciFi
- 31
- Shoujo
- 37
- Shoujo Ai
- 30
- Shounen
- 38
- Shounen Ai
- 21
- Space
- 22
- Sports
- 23
- Super Power
- 24
- Vampires
- 29
- Yaoi
- 36
- Yuri
Status of anime files
- -1
- undefined
- 0
- unknown
- 1
- on hdd
- 2
- on cd
- 3
- deleted
Wishlist types
- 0
- unknown / unfiled
- 1
- to watch
- 2
- to get
- 3
- blacklist
Wishlist priority
- 0
- low
- 1
- medium
- 3
- high
Episode states (bits)
- 1
- Special
- 2
- Recap
- 4
- OP/ED/Credits
- 32
- Trailer
- 64
- Parody
- 128
- Others
Episode MyList status
- -1
- mixed
- 0
- unknown
- 1
- on hdd
- 2
- on cd
- 3
- deleted
File state (bits)
- 1
- CRC ok
- 2
- CRC invalid
- 4
- is v2
- 8
- is v3
- 16
- is v4
- 32
- is v5
- 64
- is uncensored
- 128
- is censored
MyList file status
- 0
- unknown
- 1
- on hdd
- 2
- on cd
- 3
- deleted
MyList filestate
- 0
- normal
- 1
- invalid crc
- 2
- self-editer
- 10
- self-ripped
- 11
- on dvd
- 12
- on vhs
- 13
- on tv
- 14
- theather
- 20
- filler ep
- 100
- other